bash変数に格納されている文字列からすべての下線を削除する方法は?
myVar
現在、文字列を含む変数がありますfoo1234_
。しかし、下線は他の場所でも可能です。
下線を削除したかったのですが結果がmyVar="${myVar//_}"
出ました。Bad substitution
私は何が間違っていましたか?
答え1
パラメータ拡張を使用した代替タイプ:
underscored=A_B_C
echo "${underscored//_}"
//
すべての項目を置き換えます。空の文字列に置き換える場合は、最後の項目を省略できます/
。
答え2
この単純な変数の再割り当てはトリックを実行します。
myVar=${myVar//_/}
出力:
# myVar="hello_world__1"
# echo $myVar
hello_world__1
# myVar=${myVar//_/}
# echo $myVar
helloworld1