2017-04-14 10 views
0

PowerShellの次の文では、{}内の最初の式が{}内の2番目の式がパイプライン出力ごとに1回実行されます。 ?PowerShell foreach、最初の式は1回実行され、次の式はループ内で実行されます

1..5 | foreach{ write-host "Run Once!!" }{ write-host "Loop"} 

出力: 実行してください!! ループ ループ ループ ループ ループ

foreachの後の最初の式が一度だけ実行される理由は、特定の理由は?

答えて

0

あなたの書き方は、高度な機能のように動作します。BEGIN/PROCESS/END構成体。これと同じように:

BEGIN 
{ 
    Connect to something 
} 
    PROCESS 
    { 
    Do number of things 
    } 
END 
{ 
    Disconnect 
} 

PS C:\> 1..5 | foreach -Begin{ write-host 'Run Once!!' }-Process { write-host 'Loop'} -End{Write-Host 'Finished!'} 
Run Once!! 
Loop 
Loop 
Loop 
Loop 
Loop 
Finished! 

あなたはいくつかのステップのプロセスを必要とする何かの特定の操作を行うときに同じように、これをしたいです

関連する問題