欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Windows Powershell分析和比較管道結果

 更新時間:2014年09月20日 15:51:12   投稿:hebedich  
這篇文章主要介紹了Windows Powershell分析和比較管道結果,需要的朋友可以參考下

使用Measure-Object和Compare-Object可以統(tǒng)計和對比管道結果。Measure-Object允許指定待統(tǒng)計對象的屬性。Compare-Object可以對比對象前后的快照。

統(tǒng)計和計算

使用Measure-Object可以對對象的屬性求最小值、最大值、平均值、和。例如要查看當前目錄文件占用空間的情況。

PS C:Powershell> ls | measure length
Count  : 19
Average :
Sum   :
Maximum :
Minimum :
Property : length

PS C:Powershell> ls | measure length -Average -Sum -Maximum -Minimum
Count  : 19
Average : 53768.8421052632
Sum   : 1021608
Maximum : 735892
Minimum : 0
Property : length

使用Measure-Object還可以統(tǒng)計文本文件中的字符數(shù),單詞數(shù),行數(shù)
例如我們可以把下面的文本保存到:word.txt 。

Retirement Anxiety Spreads Among the One Percent
Report: Green Monday a Boon for Online Shopping
5 Lesser-Known Ways to Boost Your Credit Score
PS C:Powershell> Get-Content .word.txt | measure -Line -Word -Character
Lines Words Characters Property
----- ----- ---------- --------
  3  23    141

比較對象

有時需要比較前后兩個時間段開啟了那些進程,服務狀態(tài)有什么變化。類似這樣的工作可以交給Compare-Object。

比較不同的時間段
可以先將所有開啟的進程信息快照保存到一個變量中,過一段時間,再保存一份新的進程快照,然后就可以通過Compare-Object進行對比了。

PS C:Powershell> $before=Get-Process
PS C:Powershell> $after=get-process
PS C:Powershell> Compare-Object $before $after

InputObject               SideIndicator
-----------               -------------
System.Diagnostics.Process (notepad)  =>
System.Diagnostics.Process (notepad)  =>
System.Diagnostics.Process (AcroRd32)

$before 是一個數(shù)組存儲了當前所有的Process對象,Compare-Object的結果有兩個列:InputObject為前后不一致的對象,SideIndicator為不一致狀態(tài),=>表示新增的對象,結合上面的例子分析:在before和after的時間段有3個進程(AcroRd32,AcroRd32,prevhost)關閉了,有2個進程開啟了(notepad,notepad)。

檢查對象的變化

Compare-Object并不僅僅能比較對象組中的是否新增和減少了對象,它還可以比較每個對象的屬性變化,因為它有一個參數(shù)-property 。

PS C:PowerShell> Get-Service wsearch

Status  Name        DisplayName
------  ----        -----------
Running wsearch      Windows Search

PS C:PowerShell> $svc1=Get-Service wsearch
PS C:PowerShell> $svc1.stop()
PS C:PowerShell> $svc2=Get-Service wsearch
PS C:PowerShell> Compare-Object $svc1 $svc2 -Property Status,Name

          Status Name            SideIndicator
          ------ ----            -------------
       StartPending wsearch          =>
          Running wsearch

比較文件的內容

對于文本文件可以通過Get-Content進行讀取,并且將文件以行為單位保存為一個數(shù)組,這時依然可以通過Compare-Object進行比較。下面的例子創(chuàng)建兩個不同的文本文件,然后通過Compare-Object比較兩個文件的Get-Content結果。

PS C:PowerShell> "Hellow
>> Power
>> Shell" >a.txt
>>
PS C:PowerShell> "Hollow
>> Shell
>> Linux" >b.txt
>>
PS C:PowerShell> Compare-Object (Get-Content .a.txt) (Get-Content .b.txt)
InputObject SideIndicator
----------- -------------
Hollow   =>
Linux     =>
Hellow

保存快照以便后期使用

上面的例子都是把對象保存在變量中,變量有一個缺點就是一旦Powershell退出或者電腦關閉變量都會消失。所以最好的方法就是把對象保存到磁盤文件中。怎樣把對象序列化成一個文件,Powershell提供了一條命令:Export-Clixml,可以完成此工作,還有一條反序列化的命令Import-Clixml。這樣可以使Compare-object的命令更方便。例如一個月前保存一個$before對象,一個月后比較都可以。

PS C:PowerShell> Get-Process | Export-Clixml before.xml
PS C:PowerShell> $before=Import-Clixml .before.xml
PS C:PowerShell> $after=Get-Process
PS C:PowerShell> Compare-Object -ReferenceObject $before -DifferenceObject $after

相關文章

  • PowerShell小技巧實現(xiàn)IE Web自動化

    PowerShell小技巧實現(xiàn)IE Web自動化

    使用IE的COM對象來完成簡單的Web自動化測試,是最小巧和廉價的Web自動化測試了,因為它不用引入第三方插件或者工具。
    2014-09-09
  • Powershell小技巧之找出最大最小值

    Powershell小技巧之找出最大最小值

    在一個有n個元素的集合中,需要多少次比較才能確定其最小、最大元素呢?如果一個一個的比較,那么需要n-1次比較,是不是有更好的方法呢?如果,在比較中,記錄遇到的最大值和最小值。將輸入的元素兩兩比較,然后與當前的最大值、最小值進行比較。
    2014-09-09
  • PowerShell中運行CMD命令的技巧總結(解決名稱沖突和特殊字符等問題)

    PowerShell中運行CMD命令的技巧總結(解決名稱沖突和特殊字符等問題)

    這篇文章主要介紹了PowerShell中運行CMD命令的技巧總結(解決名稱沖突和特殊字符等問題),需要的朋友可以參考下
    2014-05-05
  • Powershell實現(xiàn)編寫和運行腳本

    Powershell實現(xiàn)編寫和運行腳本

    本文為那些對學習 Windows PowerShell 命令行和腳本編寫環(huán)境感興趣的系統(tǒng)管理員提供了資源。也請告訴我們本網(wǎng)站如何才能對您更有用處。
    2015-09-09
  • PowerShell函數(shù)參數(shù)使用智能提示功能例子

    PowerShell函數(shù)參數(shù)使用智能提示功能例子

    這篇文章主要介紹了PowerShell函數(shù)參數(shù)使用智能提示功能例子,這個功能一般需要在PowerShell集成開發(fā)環(huán)境ISE中才會顯示智能提示,需要的朋友可以參考下
    2014-07-07
  • 探索PowerShell(七) PowerShell變量

    探索PowerShell(七) PowerShell變量

    在程序設計中,變量是最基本的概念,它是我們表示數(shù)據(jù)的在存儲時的代號。在PowerShell中,變量通常供我們在腳本中使用,它可以是數(shù)字、字符、字符串,甚至是對象
    2012-12-12
  • powershell與cmd的異同匯總

    powershell與cmd的異同匯總

    這篇文章主要詳細匯總介紹了powershell與cmd的異同點的相關資料,需要的朋友可以參考下
    2022-08-08
  • Powershell實現(xiàn)捕獲系統(tǒng)內置EXE程序的異常

    Powershell實現(xiàn)捕獲系統(tǒng)內置EXE程序的異常

    這篇文章主要介紹了Powershell實現(xiàn)捕獲系統(tǒng)內置EXE程序的異常,系統(tǒng)內置的EXE程序是指如robocopy.exe、ipconfig.exe等命令的實現(xiàn)程序,需要的朋友可以參考下
    2014-12-12
  • Powershell中使用WMI工具例子

    Powershell中使用WMI工具例子

    這篇文章主要介紹了Powershell中使用WMI工具例子,本文先是講解了列出WMI類的方法,然后根據(jù)需要使用相應的WMI類,需要的朋友可以參考下
    2014-11-11
  • Powershell互斥參數(shù)使用實例

    Powershell互斥參數(shù)使用實例

    這篇文章主要介紹了Powershell互斥參數(shù)使用實例,本文給出了兩個代碼示例來講解互斥參數(shù)的使用,需要的朋友可以參考下
    2015-06-06

最新評論