如何获取远程计算机的时间

C# 远程链接指定计算机,获取该计算机的计算机名等信息 using System;using System.Management;class remote{    static void Main()    {        string host = "";//输入指定计算机IP或计算机名        string userName = "";//帐号        string password = "";//密码        Connecti 阅读详情

作者: Edengundam(马涛)

获得本地计算机时间很容易, 使用cmdlet: Get-Date即可.

PS C:> Get-Date

2007年9月25日 
10:44:12

但是, 如果您想获得远程计算上的时间恐怕就没有这么容易了. 幸亏PowerShell无缝集成了WMI, 因此, 我们可以通过WMI来进行尝试.
注意到WMI中的类win32_localtime可以获得计算机上的时间, 我们先在本地计算机上实验一把:

PS C:> Get-WmiObject -Class win32_localtime


__GENUS          
: 2
__CLASS          
: Win32_LocalTime
__SUPERCLASS     
: Win32_CurrentTime
__DYNASTY        
: Win32_CurrentTime
__RELPATH        
: Win32_LocalTime=@
__PROPERTY_COUNT 
: 10
__DERIVATION     
: {Win32_CurrentTime}
__SERVER         
: COMPUTER-NAME
__NAMESPACE      
: rootcimv2
__PATH           
: /COMPUTER-NAMErootcimv2:Win32_LocalTime=@
Day              
: 25
DayOfWeek        
: 2
Hour             
: 10
Milliseconds     
:
Minute           
: 50
Month            
: 9
Quarter          
: 3
Second           
: 39
WeekInMonth      
: 5
Year             
: 2007

这是我本地计算机上的时间信息, 可是这些时间信息被独立存储在不同的属性中. 我们只好利用PowerShell的格式化命令把这些信息重新组织成我们期望的样式:

PS C:> $dt = Get-WmiObject -Class win32_localtime
PS C
:> "{0:00}/{1:00}/{2} {3:00}:{4:00}:{5:00}" -f $dt.month,$dt.day,$dt.year,$dt.hour,$dt.minute,$dt.second
09/25/2007 10:54:21

我们这次使用PowerShell中的格式运算符-f, 这个运算符其实就是.Net类库中的String中的Format方法.
{0:00}中第一个"0"表示参数中的索引, 而冒号后面的两个"0"表示对数值的格式化.
这个代码有些长, 让人感觉很冗余, 还有更好的办法吗??让我们试试利用DateTime数据类型的构造函数来试试:

PS C:> New-Object DateTime $dt.year,$dt.month,$dt.day,$dt.hour,$dt.minute,$dt.second

2007年9月25日 
10:54:21

DateTime的构造函数中, 输入六个参数, 分别表示年月日, 时分秒.  现在我们来看看如何请求远程计算机上的时间. 我们先来观察下Get-WmiObject有哪些参数能够帮助我们完成任务.
Get-Help -Full Get-WmiObject命令可以查看命令的详细帮助信息. 我们可以用Get-Credential来输入用户登录的帐户和密码. 例如:

PS C:> $cred = Get-Credential Administrator
PS C
:>

执行此命令后, 你会看到提示输入密码的窗口弹出. 将这个命令返回的对象保存到变量$cred中. 接下来, 我们就要访问远程计算机了:

PS C:> $dt = Get-WmiObject -Class win32_localtime -ComputerName test-server -Credential $cred
PS C
:> $dt

__GENUS          
: 2
__CLASS          
: Win32_LocalTime
__SUPERCLASS     
: Win32_CurrentTime
__DYNASTY        
: Win32_CurrentTime
__RELPATH        
: Win32_LocalTime=@
__PROPERTY_COUNT 
: 10
__DERIVATION     
: {Win32_CurrentTime}
__SERVER         
: TEST-SERVER
__NAMESPACE      
: rootcimv2
__PATH           
: /TEST-SERVERrootcimv2:Win32_LocalTime=@
Day              
: 25
DayOfWeek        
: 2
Hour             
: 11
Milliseconds     
:
Minute           
: 9
Month            
: 9
Quarter          
: 3
Second           
: 9
WeekInMonth      
: 5
Year             
: 2007

PS C
:> New-Object DateTime $dt.year,$dt.month,$dt.day,$dt.hour,$dt.minute,$dt.second

2007年9月25日 
11:09:09

cmdlet Get-WmiObject中的形参: -ComputerName用于指定计算机名称或IP地址. -Credential参数指定了之前的登录信息, 此处我们使用了变量$cred.
最后要说一下, WMI中包括了很多的类, 包含了各种操作系统信息, 但是不同版本的操作系统之间支持的类是不同. 一般来说越靠后的版本支持的越多, 不过, 如果该版本操作系统不支持该类, 你会收到必要的错误信息.
 

最新版IAR9.40和注册工具 IAR最新版的IDE在编译速度和代码提示等各个方面上都有很大提升,软件这个东西果然还是越新越好。之前的时候,IAR v9系列网上很多人都说能用,但是又没有把 IAR v9系列的注册方法写的很清楚,导致我一直都用注册老版本v8的方法去注册v9。结果注册后都会提示。 阅读详情

相关推荐

Avalonia使用CefNet 实现web-browsers(基于CentOS8 Arm64架构)

Avalonia使用CefNet 实现web-browsers(基于CentOS8 Arm64架构)

confused_kitten的博客 3804

win32-localtime的使用

下面的例子用于反映本地系统的日期格式变化 // locale test #include <stdio.h> #include <locale.h> #include <time.h> #include <locale> #include <Windows.h> #pragma warning(disable:4996) // lo...

qq_39529180的博客 109

KT148A语音芯片SOP外挂功放芯片8002D的说明_V1

KT148A语音芯片内置8欧姆0.5W的功放,所以一般的应用场景,播放一些提示音音量是足够的。但是有的需求还需要驱动更大的扬声器,实现更大的播放音量,这里我们给出解决方案。KT148A+HAA8002D的组合

qyvhome的博客 2150

cmd命令获取当前时间

在命令提示符中,你可以使用以下命令来获取当前时间: date 在命令提示符下输入 date 并按回车键,就可以看到当前的日期和时间。 time 在命令提示符下输入 time 并按回车键,就可以看到当前的时间。 wmic 在命令提示符下输入 wmic path win32_localtime get /format:list 并按回车键,就可以看到当前的时间,包括年、月、日、时、分、秒。...

weixin_35753291的博客 7115

从URDF到Gazebo:一个完整的ROS2机械臂仿真与运动控制实战指南

本文提供了一个完整的ROS2机械臂仿真与运动控制实战指南。详细讲解了从URDF建模、ROS2 Control配置到Gazebo物理仿真的全流程,重点介绍了如何利用MoveIt2快速搭建高级运动规划系统,并解决实际部署中的常见问题,帮助开发者高效、安全地进行机器人算法验证与开发。

red88的博客 574

python编程实现制作网络流量监控动画

c,实时显示网络带宽使用情况,用柱状图或折线图表示不同时间段的流量变化。通过 Python编程实现图形库(如 Pygame、Tkinter、Matplotlib 等)来实现计算机网络基础概念的可视化动画。global bars # 声明 bars 为全局变量。# 获取当前网络流量。# 创建图形和坐标轴。

qq_42788199的博客 718

Windows批处理文件获取和区域日期格式设置无关的日期

如果解决方案要跨区域设置(即在具有不同区域设置的国际系统上)工作,则在命令行上确定日、月和年非常困难。虽然我们可以使用变量 %DATE% 和 %TIME%,但它们的内容特定于区域设置。如果设置为德语,则日期以 dd.MM.yyyy 格式显示;如果设置为"英语(美国)",则日期格式为 M/d/yyyy。 在网络上搜索,我发现了几种解决方案,其中最优雅的是依靠WMI来返回独立于区域设置的日期和时间。我下面的脚本是Rob van der Woude的脚本SortDate.bat的修改版本。 在脚本中,WM..

allway2的博客 891

yolov7目标追踪:基于自定义数据集完成检测

目标追踪包含两个阶段:(1)基于自定义数据集,训练yolo目标检测模型;(2)基于检测模型,将实时检测结果传递到StrongSORT追踪算法中,该算法在OSNet基础上结合运动和外观信息,可以跟踪yolo模型检测到的任何物体。

📷 图像处理践行者 | 传统算法 · 深度学习 · 多模态 | 分享实战经验与技术洞见,探索从像素到智能的无限可能。 2306

在当前文件夹下点击生成每日文件夹脚本

@echo off WMIC.EXE Alias /? >NUL 2>&1 || GOTO s_error :: Use WMIC to retrieve date and time FOR /F "skip=1 tokens=1-6" %%G IN ('WMIC Path Win32_LocalTime Get Day^,Hour^,Minute^,Month^,Second^,Year /Format:table') DO ( IF "%%~L"=="" goto s_do.

qq_39722325的博客 854

数据分析案例-基于红米和华为手机的用户评论分析

在智能手机市场日益繁荣的今天,红米与华为手机作为国产手机品牌的佼佼者,凭借其各自独特的品牌魅力和技术实力,赢得了广泛的用户群体和高度关注。随着技术的不断进步和消费者需求的日益多样化,用户对手机的期望已不仅限于基本的通讯功能,更涵盖了性能、拍照、续航、用户体验等多个方面。因此,深入探究红米与华为手机在用户长期使用过程中的实际表现,尤其是用户评论中所反映出的真实反馈,对于理解市场需求、优化产品设计及提升用户体验具有重要意义。本实验的背景正是基于这样的市场环境和技术发展趋势。我们旨在通过收集并分析红米与华为手机的

m0_64336780的博客 1万+

数字滤波器应用介绍

线性滤波器FIR ,会引起恒定延迟,通过补零的方式补偿非线性滤波器IIR,会引起频率相关的延迟,通过零相位延迟filtfilt补偿从信号中去除不需要的频谱时,通过滤波和补偿实现。如果需要去除的频率与采样率相差甚远,比如4kHz 与100Hz, 可通过 低通滤波->补偿->降采样–> 滤波 补偿 -->上采样还原的方法。*降采样前一定要先低通滤波为了防止混叠。

weixin_39107270的博客 274

Windows系统下查看电脑被远程访问历史记录

Windows系统下查看电脑被远程访问历史记录

阿猫阿狗。 3万+

【软考高项论文】论信息系统项目管理的干系人绩效域

例如,在处理与电信运营商合作铺设光纤网络的问题时,考虑到其在通信设施建设和运维方面的专业性和重要性,我们将之定位为高权力高利益的干系人,给予了高度关注和优先沟通。项目全程,我们对干系人绩效域的执行效果进行了定期检查和评估,通过定量与定性的数据收集,确认了项目在干系人管理上的成效,具体表现为:建立了稳固的工作关系网络,使干系人普遍认可项目目标;鉴于本项目牵涉到政府各级部门、企事业单位、市民团体、技术研发伙伴等多种类型的干系人,且干系人的诉求和影响力各异,因此,有序且持续的干系人参与管理显得尤为关键。

Programming Talk 1683

PowerShell获取远程计算机的时间

获得本地计算机时间很容易, 使用cmdlet: Get-Date即可 PS C:\Users\Administrator> Get-Date2011年6月15日 14:09:28但是,...

cm333666的博客 593

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

远程开默认共享

远程开默认共享 @echo off echo 探测远程主机中. . . set /p cm=comupter name [local machine]: ping %cm% cls echo 请输入用户名及密码. . . set user=ln-tf\liaobin set /p user=user name [ln-tf\liaobin]: set pwd=Aa

u012804387的专栏 938

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

网络探测器 v2.8 bt

Welcome to my blog!网络探测器 v2.8 软件大小:1319 KB软件语言:简体中文软件类别:国产软件 / 共享版 / IP 工具应用平台:Win9x/NT/2000/XP/2003界面预览:插件情况: 投诉更新时间:2006-02-22 10:22:41下载次数:288845推荐等级:联 系 人:supportnet2soft.com

lipeng4748的专栏 523

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

C# Winform 进程信息的获取

获取进程信息1.如何获取进程信息(1)获取本地计算机的所有进程Process [] myProcess = Process.GetProcesses();(2)获取本地计算机上指定名称的进程Process [] myProcess = Process.GetProcessesByName(“进程名称”);注意:(a)进程名称不带扩展名。 (b)可以是任何一个可执行文件例如:Proce...

weixin_33994429的博客 2406

[翻译]利用C#获取终端服务(Terminal Services)会话的闲置时间

[翻译]利用C#获取终端服务(Terminal Services)会话的闲置时间作者:Tuuzed(土仔) 发表于:2008年2月29日版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。http://www.cppblog.com/tuuzed/archive/2008/02/29/43424.html 原著...

weixin_34279579的博客 175

得到局域网内某台计算机的当前时间程序

//将此程序献给大家,希望大家喜欢 #include "stdafx.h"#include #include #include #pragma comment(lib,"Netapi32.lib")int wmain(int argc, wchar_t *argv[]){ LPTIME_OF_DAY_INFO pBuf = NULL; NET_API_STATUS nStatus

deviser 博客 742

Get Remote Machines Last Boot Time From A List Of Machines And Write To Excel - 如何获得远程主机的启动时间

By: Don HiteBy Request: Get Remote Machines Last Boot Time From A List Of Machines And Write To Excel  This article was Previously posted on Don Hites Blog  In my previous post By Request

编程岁月 813

HOW TO:获取DOS命令输出结果

Author:水如烟Public Class ConsoleOutputClass ConsoleOutput    Private Sub New()Sub New()    End Sub    Private Shared gWorkingDirectory As String = Environment.GetFolderPath(Environment.SpecialFolder.P

水如烟 3104

vb.net 教程 7-1 本地网络信息的获取 7 同步Ping

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 Ping类可以检测访问远程计算机网络是否畅通。 通过Send方法可以实现同步检测,具体代码: Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click ...

学习微软 .net 技术开发 812

浙江计算机考试2021考试时间,2021浙江教育考试院录取结果查询时间 什么时候录取...

根据考务安排,浙江省高考录取工作于7月上旬开始,实行计算机远程网上录取,下面是各批次的具体录取结果查询时间,欢迎查阅。浙江教育考试院录取结果查询时间一、普通类6月26日左右公布分段线,成绩一分一段表,提供考生成绩、位次号查询。向强基计划招生高校提供入围考生的高考成绩、体检信息、特殊类型招生控制线。6月29日8:30—6月30日17:30符合要求考生填报提前录取院校、第一段平行录取、高校专项计划、高...

weixin_31304499的博客 220

如何确定最后一次重启时间?

如何确定最后一次重启时间? 如果想知道机器最近一次重启的时间,可以打开命令行模式并输入: net statistics workstation | more 命令输出文本的第二行将显示: Statistics since ... 这里面所显示的日期和时间就是计算机最近一次启动的时间。 如果您需要在server上获得相同的信息,您可以输入:net statistics server...

MRman0404的博客 381

wmic冻结进程_WMIC的用法

获得系统版本信息wmic datafile where Name='c:\\windows\\explorer.exe' get Manufacturer,Version,Filename获得信筒进程wmic process list full 注意:这里的full也可以换成brief(简洁)获得硬件信息(这里以cpu为例)wmic cpu get name,caption,maxc...

weixin_29781865的博客 393

vb.net 教程 7-1 本地网络信息的获取 8 异步Ping

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 Ping类还提供了SendAsync()来异步检测到远程计算机的连接情况。 SendAsync方法完成后,无论成功还是失败,都会引发PingCompleted事件。因此需要先在代码中加入该事件的处理。 注意:以下代码中用的是pingEnd,它必须和PingCompleted事件使用相同的参数...

学习微软 .net 技术开发 986
上一篇: 访问数组中的值(Accessing Values in an Array)
下一篇: 在通配符中使用范围运算符(Using the Range Operator in Wildcard Queries)
PowerShell
博客等级 码龄19年 103粉丝 110原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值