Powershell小技巧之系统运行时间_PowerShell

支持所有PS版本

Windows每次启动都有一个高进度计数器,并且当系统运行这个计数器将返回一个毫秒:

$millisecondsUptime= [Environment]::TickCount
"I am up for $millisecondsUptime milliseconds!"

这种毫秒几乎引起不了你的兴趣,使用New-Timespan调整计数器的毫秒数(或任何有关间隔时间)让其成为一个有意义的单体。

$millisecondsUptime= [Environment]::TickCount
"I am up for $millisecondsUptime milliseconds!"
$timespan=New-TimeSpan -Seconds ($millisecondsUptime/1000)$timespan

现在,你可以使用时间间隔对象“$timespan”在你指定的位置报告电脑运行的时间:

$millisecondsUptime= [Environment]::TickCount
"I am up for $millisecondsUptime milliseconds!"
$timespan=New-TimeSpan -Seconds ($millisecondsUptime/1000)
$hours=$timespan.TotalHours"System is up for {0:n0} hours now."-f$hours

作为特殊用途,New-Timespan不能立刻使用毫秒数,所以脚本需要除以1000来划分毫秒数,存在一点误差。

比较简单的调整间隔时间的毫秒数,请这样尝试:

$timespan= [Timespan]::FromMilliseconds($millisecondsUptime)

在这个例子中它不会造成差异,还可以用在其它地方。例如,你有一个控制声音间隔的FromTicks()方法(系统间隔最小单位)。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索powershell
系统运行时间
powershell 系统日志、powershell 系统变量、pe系统 powershell、powershell 更新系统、大额支付系统运行时间,以便于您获取更多的相关知识。

时间: 2016-09-03

Powershell小技巧之系统运行时间_PowerShell的相关文章

Powershell小技巧之复合筛选_PowerShell

当你分析文本日志或筛选不通类型的信息时,你通常要使用 Where-Object.这里有一个通用脚本来说明复合筛选: # logical AND filter for ALL keywords Get-Content -Path C:\windows\WindowsUpdate.log | Where-Object { $_ -like '*successfully installed*' } | Where-Object { $_ -like '*framework*' } | Out-Grid

PowerShell小技巧实现IE Web自动化_PowerShell

Windows 系统自带的Internet Explore +加上PowerShell 即可搞定. 今天就分享下这几天自己写的几个小函数,欢迎拍砖: # # 打开IE窗口 # function New-IEWindow { param( [string]$Url, [switch]$Visible, [switch]$FullScreen ) $Global:IEHost = new-object -com "InternetExplorer.Application" $Global:

PowerShell小技巧之True和False的类型转换_PowerShell

在条件判断时,离不开$True和$False,将其它类型转换成Bool类型时,有几点需要留意: 其它类型转换成布尔类型 PS> 0,1,-1,'0','1','true','false',$null | foreach { [bool]$_ } False True True True True True True False 总结:只有整数0和Null才能转换成False,其它都会被强制类型转换成True 布尔类型转换成字符串 复制代码 代码如下: PS> $true,$false | fo

Powershell小技巧之判断是否包涵大小写_PowerShell

使用正则表达式可以检查一个字符中是否包涵一个大写字母: $text1 = 'this is all lower-case' $text2 = 'this is NOT all lower-case' $text1 -cmatch '[A-Z]' $text2 -cmatch '[A-Z]' 结果将返回"true"或"false" 反过来检查是否包含小写,可以尝试这样: $text1 = 'this is all lower-case' $text2 = 'this

Powershell小技巧之去除多余的空格_PowerShell

要去去除多余的空格,请尝试下面正则表达式: PS> '[ Man, it works! ]' -replace '\s{2,}', ' ' [ Man, it works! ] 你也可以用这个方法转换成固定格式的CSV表格: PS> (qprocess) -replace '\s{2,}', ',' >tobias,console,1,3876,taskhostex.exe >tobias,console,1,3844,explorer.exe >tobias,console

PowerShell小技巧之获取域名whois信息_PowerShell

Whois 简单来说,就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人.域名注册商.域名注册日期和过期日期等).通过域名Whois服务器查询,可以查询域名归属者联系方式,以及注册和到期时间.通常情况下,whois信息均为真实信息,通过whois信息可以找到域名注册人的很多真实信息,像电话,邮箱,NS记录,是对网站进行社工非常好的信息来源,对于安全从业人员来说,快速获取whois信息,能够帮助自己掌握目标网站的很多有用信息. 而whois信息通常是保存在各级域名注册

Powershell小技巧之使用-F方法带入数据_PowerShell

封闭在双引号中的字符串能够直接使用变量,这是常用的手法,如代码: $name = $host.Name "Your host is called $name." 可是这个技巧也有限制.如果你想要显示对象的属性而不是这个变量的本身,例如这样将会失败: PS> "Your host is called $host.Name." Your host is called System.Management.Automation.Internal.Host.Intern

PowerShell小技巧之调用CloudFlare的SDK查询网站统计信息_PowerShell

CloudFlare是举世闻名的CDN服务商,其免费套餐也足以满足普通用户.优化网站加载速度,缓存静态资源,分地域进行内容就近分发,抵御Ddos攻击.总之,很好,很厚道.但是在天朝许多结点被封,本身的DNS被封,和谷歌与FB一样,同是天涯沦落人(其实我们自己才是). 我在查看CloudFlare的SDK时,发现支持Windows平台支持Invoke-WebRequest,也就是PowerShell,就试着调用了下,果然可以. 比如查询网站的统计信息: $body = @{ a = 'stats'

Powershell小技巧之查看安装的.Net framework版本信息_PowerShell

查看当前PowerShell的.Net运行版本 PS> $PSVersionTable.CLRVersion Major Minor Build Revision ----- ----- ----- -------- 4 0 30319 34014 PS> [environment]::Version Major Minor Build Revision ----- ----- ----- -------- 4 0 30319 34014  查看所有安装的.Net 版本 PS> dir