1. ホーム
  2. powershell

[解決済み] PowerShellのループで現在のアイテムのインデックスを取得する

2023-07-10 07:29:59

質問

PowerShell でアイテムのリストがある場合、ループ内から現在のアイテムのインデックスを見つけるにはどうすればよいですか。

例えば

$letters = { 'A', 'B', 'C' }

$letters | % {
  # Can I easily get the index of $_ here?
}

これらすべての目的は、コレクションを フォーマット-テーブル を使用してコレクションを出力し、現在のアイテムのインデックスを持つ最初のカラムを追加することです。この方法で、人々は選択する項目をインタラクティブに選択することができます。

どのように解決するのですか?

自動変数で可能かどうかはわかりません。自分自身で宣言し、インクリメントすることは可能です。

$letters = { 'A', 'B', 'C' }
$letters | % {$counter = 0}{...;$counter++}

あるいは for ループを使うか...

for ($counter=0; $counter -lt $letters.Length; $counter++){...}