(本記事はPowerShell入門記事としてコチラにもまとめています。)
「PowerShell(乱数、コマンド置換)」の続きです。
PerlやAwkと同じようにブロックが指定できます。
起動時1回だけ実行するbeginブロック。標準入力の各行を処理するprocessブロック。最後に1回だけ実行するendブロックです。
使ってみましょう。
PS C:\Users\takk> function tohex(){
>> begin{$s=""}
>> process{$s += "{0:X2} " -f $_}
>> end{echo $s}
>> }
>>
PS C:\Users\takk> 10,20,30,40,50 | tohex
0A 14 1E 28 32
PS C:\Users\takk>
次は、lsの結果を渡してみましょう。
PS C:\Users\takk\aaa> ls -n dir_11CFDF63 dir_2065207 dir_2EA62317 dir_3A7F5143 dir_46585CA dir_59E634FB dir_5D8B7032 dir_60682448 dir_6604792F dir_6A254AAD dir_7E2D24B5 PS C:\Users\takk\aaa>
18桁の右詰表示に加工する関数です。
PS C:\Users\takk\aaa> function print20(){
>> process{"|{0,18}|" -f $_}
>> }
>>
PS C:\Users\takk\aaa> ls -n | print20
| dir_11CFDF63|
| dir_2065207|
| dir_2EA62317|
| dir_3A7F5143|
| dir_46585CA|
| dir_59E634FB|
| dir_5D8B7032|
| dir_60682448|
| dir_6604792F|
| dir_6A254AAD|
| dir_7E2D24B5|
PS C:\Users\takk\aaa>


コメント