質問: |行頭に - bash 行の先頭にある `|` の意味は何ですか? ``` tr -d '?."!:,();' < manywords \ | tr 'A-Z' 'a-z' \ | tr ' ' '\n' ``` 私が使用しているリソースではこれがうまくいくはずだと言いますが、実行すると予期しないトークンの近くで`構文エラーが発生します` | '
回答: 構文エラーは、空の行によるものです。 ``` tr -d '?."!:,();' < manywords \ | tr 'A-Z' 'a-z' \ | tr ' ' '\n' ``` うまくいくはずです。 `\` は "このコマンドは次の行に続き"という意味です。 ``` tr -d '?."!:,();' < manywords | tr 'A-Z' 'a-z' | tr ' ' '\n' ``` ただし、より読みやすい。