2017-09-06 15 views
3

clipと同時に出力を表示するにはどうすればよいですか?クリップとディスプレイの同時表示結果

私が| clipを最後の行に置くたびに、出力はクリップボードにコピーされますが、コンソールウィンドウには表示されません。

Get-Date | clip 

答えて

1

これを少し調べたところ、あなたが求めていることを行う唯一の方法は、2つの別々の行で行うことです。

$value = Get-Date 
Write-host $value 
$value | clip 

1行が次のようになり$value = Get-Date;$value;$value|clip

PowerShellは本当にコンソールに書き込み、ホストから何かをリダイレクトしたいと考え、この。クリップは...パイプラインのさらに下には何も渡したくない

4

使用変数Get-Dateの出力、すなわち、出力をキャプチャするための一般的なパラメータ-ov-OutVariable変数:

Get-Date -ov output | clip; $output 

あなたが起動しているコマンドは-OutVariableをサポートしていないため、コマンドレットまたは高度な機能/スクリプトではありませんし、場合は、代わりにこのテクニックを使用することができます。

($output = Get-Date) | clip; $output 

これは、(...)に変数代入を囲むと、割り当てられた値が渡されるという事実に依存します。


することはできパッケージカスタム関数の助けを借りて、この機能

Function Write-OutputAndClip { $Input | Write-Output -ov output | clip; $output } 

あなたもそれの別名を定義した場合には、clipechoを言う...

Set-Alias clipecho Write-OutputAndClip 

...あなたはそれを簡潔に呼び出すことができます:

Get-Date | clipecho # copies output to the clipboard *and* echoes it.