Bashパラメーター拡張は、正確に一致する項目のみを置き換えます。

Bashパラメーター拡張は、正確に一致する項目のみを置き換えます。

''$ VARが何かと一致する場合にのみbashパラメータ拡張を使用して置き換えることはできますか?'value' 正確に

先頭を${VAR#value}削除し、同様に最後から削除する構文があります。これは で置き換えられますが、 or のようなものであれば で置き換えることができますが、そのような場合には同じに保たなければなりません。value$VAR${VAR%value}value''$VARvalue11value1

ステートメントを使用してこれを実行できることを知っていますが、特定の値と同じ場合は表示されないifものをステートメントに追加しようとしています。これがパラメータ拡張や他の種類の内部拡張を使用する理由です。PS1接続詞の構文。

ベストアンサー1

次のパラメータ拡張を選択できます$()

PS1='$( [[ "${VAR}" == value ]] || printf %s "${VAR}" )$ '

値から末尾の改行文字を削除します$VAR

おすすめ記事