PowerShellでコマンドの途中で改行する方法
[質問]
PowerShellで、コマンドが長くなるとき、行の途中で改行して続行できますか
[回答] Gemini
はい、もちろんです!PowerShellで長いコマンドを途中で改行して読みやすくする方法は、主に3つあります。
状況に合わせて使い分けてみてください。
1. バックティック( `)を使う
最も一般的な方法です。行の末尾にバックティック(Shift + @ キーで入力できる「 ` 」記号)を置くと、「次の行に続きますよ」という合図になります。
注意点: バックティックの直後にスペースが入っていると、エラーになります。必ず「`」がその行の最後の文字になるようにしてください。
2. パイプ(|)の直後で改行する
コマンドをパイプで繋ぐ場合、パイプ記号のすぐ後ろであれば、バックティックなしでそのまま改行できます。PowerShellが「まだ続きがあるな」と自動で判断してくれるからです。
3. カンマや括弧の途中で改行する
配列のカンマ(,)や、メソッドの括弧(()、スクリプトブロックの波括弧({)の途中でも、自然に改行が可能です。
おすすめのテクニック:「スプラッティング」
もしパラメーターが非常に多くて読みづらい場合は、スプラッティング(Splatting)という手法が一番スマートです。ハッシュテーブル(連想配列)に引数をまとめて渡す方法です。
$params = @{
Path = "C:\Windows"
Filter = "*.log"
Recurse = $true
ErrorAction = "SilentlyContinue"
}
Get-ChildItem @params
※ 最後の実行時だけ、$ ではなく @ を使うのがポイントです。
書き方に迷っている具体的な長いコマンドはありますか?もしあれば、スプラッティング形式に書き換えるお手伝いもできますよ!