リストの定義がわかりにくい

リストの定義がわかりにくい

GNU bashマニュアルでは、リストは次のように定義されています。

リスト1';'、'&'、'&&'、または '||' のいずれかの演算子で区切られた 1 つ以上のパイプラインのシーケンスであり、オプションで ';'、'&'、または改行のいずれかで終了します。

このリストの定義は私を混乱させます。定義内の単語をパイプラインに置き換えると、より理解しやすくなります。パイプラインのシーケンスがどのように機能するのか理解できません。2演算子 ';'、'&'、'&&'、または '||' で区切ることができます。

答え1

Bashのマニュアルページでは、使用されている用語に関して混乱することがよくあります。しかし、次の定義を読めば、あなたの質問はより明確になります。パイプライン:

|パイプラインは、制御演算子またはのいずれかで区切られた 1 つ以上のコマンドのシーケンスです|&。パイプラインの形式は次のとおりです。

[time [-p]] [ ! ] command [ [|⎪|&] command2 ... ]

http://man7.org/linux/man-pages/man1/bash.1.html#SHELL_GRAMMAR

つまり、パイプライン全てのパラメータを持つ1つのコマンド、または複数のコマンドパイプこれらを複数組み合わせることもできますパイプライン後続の(条件付き)実行のために、前述の演算子によって実行されます。

関連情報