天天看點

輸入、過濾和輸出——PowerShell三分鐘(八)

今天的三分鐘給大家歸納一下PowerShell日常對資料的輸入過濾和輸出的處理

PowerShell輸入資料的方式有很多種,包括直接輸入字元、導入資料、捕獲界面輸入等

對于較少的資訊,可以直接手工在PowerShell界面中輸入:

輸入、過濾和輸出——PowerShell三分鐘(八)

這種方式很常見,對于需求資訊較少的查詢和操作非常友善

除此之外,還有Read-Host用于互動式輸入:

輸入、過濾和輸出——PowerShell三分鐘(八)

由于是互動式輸入,多用于必須使用者幹預的腳本

如果涉及到大量資料的輸入,則需要用到Get-Content

首先準備一個txt,每一行都是需要輸入的資料

輸入、過濾和輸出——PowerShell三分鐘(八)

通過Get-Content即可擷取文檔内的所有資料

輸入、過濾和輸出——PowerShell三分鐘(八)

然後通過管道進行操作即可

輸入、過濾和輸出——PowerShell三分鐘(八)

Import-Csv的指令和Get-Content的作用是類似的,差別在于Import-Csv是通過Csv檔案進行導入,并且導入的每一行都是一個對象

這裡大家要注意第一行是對象的屬性名,在這裡我命名成了Name,你也可以去定義成其他的名稱

輸入、過濾和輸出——PowerShell三分鐘(八)

導入一下~~~

輸入、過濾和輸出——PowerShell三分鐘(八)

OK~~

輸入、過濾和輸出——PowerShell三分鐘(八)

基本的輸入就介紹到這,當然輸入資料的方式還有很多很多,這裡不一一列舉,大家可以通過Get-Command來去查找更多的導入方式

接下來說下過濾:通過過濾,可以更準确的顯示我們所需要的資訊,也就是用Where-Object指令

當然,比較的寫法有兩種,第一個是比較語句格式,第二個是腳本塊格式,兩個指令的作用是一樣的,選一個自己習慣用的就好

輸入、過濾和輸出——PowerShell三分鐘(八)

上面的例子是簡單的判斷是否等于,除此之外還有其他的條件判斷

輸入、過濾和輸出——PowerShell三分鐘(八)

由于條件衆多,真的不好都寫出來,各位可以去 https://technet.microsoft.com/zh-CN/library/dd315321.aspx 檢視更多的比較操作符

最後再說一下輸出~~~~

常用的輸出例如Write-Host可以把結果輸出到PowerShell界面

當然并不是所有的需求都要列印到螢幕,有時需要輸出到檔案,有時要選其中的個别屬性

這裡簡單列舉下:

輸入、過濾和輸出——PowerShell三分鐘(八)

除此之外還有

輸入、過濾和輸出——PowerShell三分鐘(八)

通常根據需要可以先選擇需要輸出的内容,通過格式化Format-List Format-Table或Select-Object來選擇屬性

輸入、過濾和輸出——PowerShell三分鐘(八)

然後再輸出到其他位置,比如檔案

輸入、過濾和輸出——PowerShell三分鐘(八)

當當當,完成

輸入、過濾和輸出——PowerShell三分鐘(八)

最後介紹一個有意思的指令 Out-GridView

輸入、過濾和輸出——PowerShell三分鐘(八)

好啦,今天的三分鐘就到這,各位趕快操練起來~~~