国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PowerShell > 正文

Windows Powershell對象轉換成文本

2020-10-29 21:03:00
字體:
來源:轉載
供稿:網友

Out-Default可以將對象轉換成可視的文本。事實上Out-Default會首先調用Format-Table,將更多的屬性默認隱藏。再調用Out-Host將結果輸出在控制臺上。因此下面的三組命令執行結果是相同的。

lsls | Format-Table | Out-Hostls | Out-Default

顯示隱藏的對象屬性

要查看對象結果的所有屬性,可是使用
ls | Format-Table *
這樣因為屬性和屬性的內容太多可能不會顯示完全,可以使用文本換行參數
ls | Format-Table * -Wrap

格式化管道結果

首先可是使用下面的命令查看所有以Format打頭的命令

PS C:Powershell> Get-Command -Verb formatCommandType   Name              Definition-----------   ----              ----------Cmdlet     Format-Custom          Format-Custom [[-Property]Cmdlet     Format-List           Format-List [[-Property]Cmdlet     Format-Table          Format-Table [[-Property]Cmdlet     Format-Wide           Format-Wide [[-Property]

Format-Custom: 使用自定義視圖來設置輸出的格式。
Format-List: 將輸出的格式設置為屬性列表,其中每個屬性均各占一行顯示。
Format-Table: 將輸出的格式設置為表。
Format-Wide: 將對象的格式設置為只能顯示每個對象的一個屬性的寬表。

顯示指定的屬性

要顯示指定的屬性,你首先得知道結果對象中的屬性名,例如:

PS C:Powershell> ls | Format-Table Name,Length,LastWriteTimeName            Length           LastWriteTime----            ------           -------------ABC                          2011/11/23 17:25:53myscript                       2011/11/29 18:21:28a.html           67580           2011/11/24 18:30:13a.txt           26384           2011/11/24 20:04:31alias           12060           2011/11/24 20:26:36

使用通配符

例如要查看當前以i打頭的進程,并顯示進程的名字和其它以”pe”打頭,以”64″結尾的進程。

PS C:Powershell> Get-Process i* | Format-Table Name,pe*64Name        PeakPagedMemorySize  PeakWorkingSet64 PeakVirtualMemorySi                   64                  ze64----         -------------------   ---------------- -------------------Idle                 0          0          0IMECFMUI           946176        4292608       48054272IMECMNT            1564672       5320704       65482752IMEDICTUPDATE       1224704       4579328       31965184

腳本塊作為屬性

在Powershell中文件的Length默認以byte作為單位如果你象讓它輸出時以KB顯示,可是考慮羨下面的方法。

PS C:Powershell> ls | Format-Table Name,{ [int]($_.Length/1kb) }Name            [int]($_.Length/1kb)----            ----------------------function.ps1                21LogoTestConfig.xml           0ls.html                     3name.html                  7

修改列標題

使用合成的屬性,如果使用腳本塊作為標題,看著很不爽。可以使用Lable設置。同樣是上面的例子,稍作修改。

PS C:Powershell> $column = @{Expression={ [int]($_.Length/1KB) }; Label="KB" }PS C:Powershell> Dir | Format-Table Name, $columnName                    KB----            ----------------------function.ps1                21LogoTestConfig.xml           0ls.html                     3name.html

優化列寬度

因為Powershell的絕大多數輸出都是實時的流模式,所以下一條結果的寬度未知,Powershell的結果會默認采用分散對齊,這樣可以最大限度利用控制臺的寬度,但是可以通過-auto參數對列的寬帶進行優化,會將屬性值的最大寬帶作為每一列的寬度,對比一下吧:

PS C:Powershell> ls  目錄: C:PowershellMode        LastWriteTime   Length Name----        -------------   ------ ----d----    2011/11/23   17:25      ABCd----    2011/11/29   18:21      myscript-a---    2011/11/24   18:30   67580 a.html-a---    2011/11/24   20:04   26384 a.txtPS C:Powershell> ls | Format-Table -AutoSize  目錄: C:PowershellMode     LastWriteTime Length Name----     ------------- ------ ----d---- 2011/11/23   17:25    ABCd---- 2011/11/29   18:21    myscript-a--- 2011/11/24   18:30 67580 a.html

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 吴川市| 亚东县| 玉门市| 秦安县| 兴国县| 亚东县| 竹北市| 乌拉特后旗| 高唐县| 新巴尔虎右旗| 鄱阳县| 八宿县| 佛冈县| 建宁县| 凌云县| 晋宁县| 社会| 竹溪县| 乳源| 南京市| 兰西县| 徐州市| 左权县| 正定县| 乡城县| 咸丰县| 微山县| 丰原市| 满洲里市| 望谟县| 茌平县| 宜州市| 读书| 桃源县| 玉门市| 安乡县| 泰顺县| 大名县| 吉安县| 阿瓦提县| 密云县|