0
#/bin/bash
PATH_GSUTIL=""
[ -f "$PATH_GSUTIL"/gsutil ] || (echo "$PATH_GSUTIL does not contain 'gsutil'" && exit)
echo a
私はそれがexit
で終了すると思います。どのように進んで次の行を実行するのですか?このbashスクリプトはどのようにして 'a'と書くことができますか?
#/bin/bash
PATH_GSUTIL=""
[ -f "$PATH_GSUTIL"/gsutil ] || (echo "$PATH_GSUTIL does not contain 'gsutil'" && exit)
echo a
私はそれがexit
で終了すると思います。どのように進んで次の行を実行するのですか?このbashスクリプトはどのようにして 'a'と書くことができますか?
()
command grouping operatorは、終了するサブシェルを作成します。
ビルドunwind's answer:()
は、exit
を実行するサブシェルを作成します。 {}
を使用できます({
および}
の周りに空白が必要です)。あなたのケースでは、外殻によってexit
が実行されるので、それは仕事をします。