私の文字列には区切り文字の下線(_)があります。
入力 -
- ABC_テスト
- PQR_XYZ_TEST
- PQR_XYZ_ABC_TEST
予想出力 -
- アルファベット
- PQR_XYZ
- PQR_XYZ_ABC
文字列の最後の部分だけを削除したいです。誰でもこれを達成するためのより速い方法(おそらく文章)を提案できますか?
答え1
string='ABC_TEST'
mod_string="${string%_*}"
echo "$mod_string"
ABC
答え2
デフォルトのsedコマンドは次のとおりです。
sed 's/_TEST$//' filename
または、最後の項目以降の項目を削除してください_
。
sed 's/_[^_]*$//' filename
文字列が別のコマンドから来た場合:command | sed ...
変数ならsed ... <<< "${VARIABLE}"