長いパイプを作成するとき、2行に分割する方がより明確になることがよくあります。
このように長いコマンドラインは次のとおりです。
ruby -run -e httpd -- -p 5000 . 2>&1 | tee >(grep -Fq 'WEBrick::HTTPServer#start' && open localhost:5000)
それは次のように分けることができます:
ruby -run -e httpd -- -p 5000 . 2>&1 \
| tee >(grep -Fq 'WEBrick::HTTPServer#start' && open localhost:5000)
または:
ruby -run -e httpd -- -p 5000 . 2>&1 |
tee >(grep -Fq 'WEBrick::HTTPServer#start' && open localhost:5000)
簡単に言うと:
command1 \
| command2
または:
command1 |
command2
私はこれがスタイル(コメント)の問題かもしれないことを知っていますが、好む方法はありますか?それでは、その理由は何ですか?
ベストアンサー1
これが何をするかを自分に尋ねてください。
command1 \
| command2
違いはわかりません。私もできませんが、シェルはできます。詳しく見ると、後ろにスペースがあります\
。これにより、改行文字がエスケープされるのを防ぎます。
したがって、より安全な他のフォームを使用してください。ここでも同じエラーが表示されます(|
この場合はスペースが後ろに表示されます)。しかし、エラーは発生しません。
command1 |
command2