#author("2018-06-26T20:10:24+09:00","","")
#navi(../)
* 配列やハッシュの各値を要素としたループのサンプル [#ef45d0ae]
PowerShellで配列の各値を要素としたループのサンプルコードを以下に記します。

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

* 関連記事 [#j15068ba]
-[[ハッシュ(連想配列)の要素をforeachで表示するサンプルコード>PowerShell/ハッシュ(連想配列)の要素をforeachで表示するサンプルコード]]
-[[PowerShellでハッシュ(連想配列)に要素を追加する>PowerShell/ハッシュ(連想配列)に要素を追加する]]
-[[PowerShellでCSVファイルのインポート>PowerShell/CSVファイルのインポート・Import-Csv]]
-[[配列やハッシュの各値を要素としたループのサンプル>PowerShell/配列やハッシュの各値を要素としたループのサンプル]]
-[[PowerShellで配列内の文字列を連結し1つの変数に格納したい>PowerShell/配列内の文字列を連結し1つの変数に格納したい]]
-[[ハッシュの配列を表形式(Format-Table)で表示する方法>PowerShell/ハッシュの配列を表形式(Format-Table)で表示する方法]]


* ファイル一覧を要素としてループするサンプル [#v038fac2]
以下の例は、Get-ChildItemコマンドレットにより、ファイル一覧を取得し foreach により 取得したFileInfoオブジェクトのName Propertyを表示しています。
 Get-ChildItem * | % { $_.Name }
上記のコードは以下と等価です。
 Get-ChildItem * | foreach { $_.Name }
foreach は % と記述することができます。~
以下、実際に実行した出力例です。
 PS C:\> Get-ChildItem * | foreach { $_.Name }
 $WINDOWS.~BT
 AuthLog
 <省略>
 WBF 3.4
 Windows
 IFRToolLog.txt
 Recovery.txt
 setup.log
尚、ディレクトリを含めた出力にしたい場合は、以下のようにすれば実現できます。
 Get-ChildItem * | % { $_.FullName }

* 配列を要素としてループするサンプル [#r57383bc]
以下の例は配列を作成し、配列要素でループしているサンプルです。
 PS C:\> $Ary = "Say", "Hello", "world"
 PS C:\> $Ary | % { $_ }
 Say
 Hello
 world

* ハッシュの場合のサンプル [#x1d52ddb]
ハッシュの場合は以下のようにキーと値を取得します。
 $h = @{"i1"="Say"; "i2"="Hello"; "i3"="world"}
 foreach ($k in $h.Keys) { $k + " = " + $h[$k] }
実際に実行した時の出力です。~
並びは変わっていますが、Key = Value で表示されているのが確認できます。
 PS C:\> $h = @{"i1"="Say"; "i2"="Hello"; "i3"="world"}
 PS C:\> foreach ($k in $h.Keys) { $k + " = " + $h[$k] }
 i2 = Hello
 i3 = world
 i1 = Say

以上、いろいろな要素でループするサンプルでした。

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

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