1

を使用して、ソートされたハッシュ テーブルから特定の値を抽出しようとしていますSelect-String

これは機能しますが、出力に余分な空白行があるのはなぜですか?

cls

$fruits = @{"1" = "apple"; "2" = "lemon"; "3" = "orange"; "4" = "apricot"}

foreach ($fruit in $fruits.GetEnumerator() | Sort-Object Value) {
    $fruit.Value | Select-String -pattern "ap" -SimpleMatch
}
4

2 に答える 2

0

PowerShell 3.0 を使用しています。

2行のコードを実行しました

PS C:\> $fruits = @{"1" = "apple"; "2" = "lemon"; "3" = "orange"; "4" = "apricot"}
PS C:\> $fruits.Values -like 'ap*'
apricot
apple
PS C:\>

さらなる調査

一致しない場合はNULLを返すようです。

foreach($key in $fruits.Keys){(Select-String -Pattern 'ap' -SimpleMatch -InputObject $fruits[$key]) -eq $NULL}

変数にリダイレクトしていないため、ホストに NULL を出力するだけです。それは私の仮定です(仮定)。

奇妙な...良い質問です。

于 2013-04-05T16:56:48.310 に答える