コマンドのサブセットを条件付きにする方法は?

コマンドのサブセットを条件付きにする方法は?

私の質問に対する直接の答えが見つかりません。おそらくそれを表現する方法や正しい用語を知らないからです。

チェーン「または」でコマンドのサブセットを作成する方法を探しています。

良い

A && B && (C || D) && E && F

前のコマンドの結果によって、次のコマンドがトリガーされるかどうかが決まります。

chefこの場合はコマンドです。

knife vault create

これにより、すでに存在するVaultを作成しようとすると中断エラーが発生します。だから私もしたい

knife vault update

knife vault createスクリプトでエラーが発生した場合

より大きな概要は次のとおりです。

command1 && \
command2 && \
(knife vault create
or
knife vault update) && \
command4 && \
continuing...

これまでに書いたスクリプトにはケース(1)がほとんどないので、型を維持し、突然/ifまたはelse「より高度な」で始まらないようにしてください。

ベストアンサー1

command1 &&
command2 &&
{ knife vault create ||
knife vault update; } &&
command4 &&
# ...

例:

echo command1 &&
echo command2 &&
{ echo knife vault create ||
echo knife vault update; } &&
echo command4 &&
exit

出力:

command1
command2
knife vault create
command4

echo command1 &&
false &&
{ echo knife vault create ||
echo knife vault update; } &&
echo command4 &&
exit

出力:

command1

if氏名:

if echo command1 && false; then
    echo knife vault create ||
    echo knife vault update &&
    echo command4 &&
    exit
fi

おすすめ記事