編集用の PowerShell コマンドを呼び出す

編集用の PowerShell コマンドを呼び出す

以前のコマンド (例: r 29) を呼び出して実行する Invoke-History コマンド (エイリアス r) については知っていますが、コマンド 29 を呼び出して実行しない方法 (つまり、実行前に編集できる現在の行に配置する方法) はありますか? 上矢印を複数回押すのと少し似ていますか? 履歴が長いと、以前のコマンドに戻って編集して実行するのは非常に面倒です。

コマンドのテキストを呼び出すには、次のようにすればよいことがわかっています。

高さ 56 | 幅

そしてコピー&ペーストしますが、長いコマンドが行に折り返されているため、エディタにコピー&ペーストし、行を結合してから、コピー&ペーストし直す必要があります。本当に面倒です!

答え1

PowerShell 内で PowerShell を実行する方法が見つかりませんが、PowerShell 実行可能ファイルを実行して PowerShell コマンドを渡すと動作します。実行内容によっては、スコープに問題が発生する可能性があります。

& powershell $(h 56).CommandLine

答え2

純粋な Powershell ソリューションではありませんが、clip.exe にパイプしてコンソールに貼り付けることができます。まだ 2 つの手順がありますが、行は適切に折り返されるはずです。XP を使用している場合は、Server 2003 システムから clip.exe をコピーする必要があるかもしれません。

(h 56).CommandLine | clip.exe

関連情報