centos 端末で ${} を実行すると交換エラー

centos 端末で ${} を実行すると交換エラー

Centos端末で次のコマンドを作成しています。

RC=${docker wait dat_abcdetl_1}

しかし、エラーが発生します。

-bash: ${docker wait  dat_abcdetl_1}: bad substitution

答え1

あなたが探しているものは次のとおりです。

RC=$(docker wait dat_abcdetl_1)

この$(...)構成は、次の目的で使用されます。プロセスの交換${...}パラメータの置換

答え2

${...}シェルパラメータ拡張

中括弧を使用するときに一致する閉じ括弧は、バックスラッシュでエスケープされていないか、引用符付き文字列内にあり、埋め込み算術拡張、コマンド置換、または引数拡張内にない最初の「}」です。

あなたの例では、あなたが本当に欲しいものコマンドの置き換え

コマンド置換を使用すると、コマンド出力がコマンド自体を置き換えることができます。

これは次のように書くことができます。

RC=$(docker wait  dat_abcdetl_1)

関連情報