#navi(../)
* PowerShellで指定した列のみを表示する・Select-Object [#b8bd8850]
PowerShellで指定した列のみ表示する方法を以下に記します。

#contents
#htmlinsertpcsp(win-top.html,win-sp.html)

* Get-ChildItemで指定した列のみ表示する [#ze5a2aec]
Get-ChildItemの出力で指定した列のみ表示してみます。

-通常の出力
 PS C:\> Get-ChildItem c:\
 
 
     ディレクトリ: C:\
 
 
 Mode                LastWriteTime     Length Name
 ----                -------------     ------ ----
 d----        2015/07/31     18:18            $WINDOWS.~BT
 d----        2014/07/17      0:55            AuthLog
 d----        2014/07/17      1:32            DRIVERS
 d----        2012/11/06      7:56            Intel
 d----        2013/08/23      0:22            PerfLogs
 d-r--        2015/08/15     12:34            Program Files
 d-r--        2015/10/21     19:34            Program Files (x86)
 <省略>

-Name, Length, LastWriteTimeを表示してみる~
以下のように指定した順序および列が表示されます。
 PS C:\> Get-ChildItem c:\ | Select-Object Name, Length, LastWriteTime
 
 Name                                    Length                                  LastWriteTime
 ----                                    ------                                  -------------
 $WINDOWS.~BT                                                                    2015/07/31 18:18:07
 AuthLog                                                                         2014/07/17 0:55:43
 DRIVERS                                                                         2014/07/17 1:32:41
 Intel                                                                           2012/11/06 7:56:21
 PerfLogs                                                                        2013/08/23 0:22:35
 Program Files                                                                   2015/08/15 12:34:21
 Program Files (x86)                                                             2015/10/21 19:34:33
 <省略>

-幅をつめてみる~
上記の出力をみると各列の空白が広いです。~
これをFormat-Tableコマンドレットを使用してつめてみます。
 PS C:\> Get-ChildItem c:\ | Select-Object Name, Length, LastWriteTime | Format-Table -AutoSize
 
 Name                    Length LastWriteTime
 ----                    ------ -------------
 $WINDOWS.~BT                   2015/07/31 18:18:07
 AuthLog                        2014/07/17 0:55:43
 DRIVERS                        2014/07/17 1:32:41
 Intel                          2012/11/06 7:56:21
 PerfLogs                       2013/08/23 0:22:35
 Program Files                  2015/08/15 12:34:21
 Program Files (x86)            2015/10/21 19:34:33
 <省略>

* CSVファイルで列を指定してみる [#qbcd664f]
以下のようなcsvファイルを使用して列指定してみます。
 PS C:\> Get-Content .\stock.csv
 ITEM,PRICE,STOCK
 AIUEO,1000000,10
 KAKIK,500000,20
 SASIS,300000,30
 TACHITU,300000,40
 NANINU,200000,50

 PS C:\> $csv = Import-Csv .\stock.csv
 PS C:\> $csv
 
 ITEM                                    PRICE                                   STOCK
 ----                                    -----                                   -----
 AIUEO                                   1000000                                 10
 KAKIK                                   500000                                  20
 SASIS                                   300000                                  30
 TACHITU                                 300000                                  40
 NANINU                                  200000                                  50

 PS C:\> $csv | Select-Object ITEM, STOCK
 
 ITEM                                                        STOCK
 ----                                                        -----
 AIUEO                                                       10
 KAKIK                                                       20
 SASIS                                                       30
 TACHITU                                                     40
 NANINU                                                      50

Import-Csvコマンドレットで読み込んだCSVファイルの指定した列のみ表示させる例となります。

以上、Select-Objectを使用して指定した列のみ表示する方法でした。

#htmlinsertpcsp(win-btm.html,win-sp.html)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS