sed パターンマッチングと行削除

sed パターンマッチングと行削除

最後の一部のスペース(例:4)を削除したいです。line$#*425 with space

完了できません。

echo "line$#*425 with space          " | sed 's/ /\1 \2/g'

私も使ってみようかと思っていますが、od -bまだよくわかりません。

私は何をすべきですか?

ノート:スペースは通常の ""またはタブ文字です。

編集する:以下の回答を確認するためにテストを行った方法です。

[root@testgfs2 test]$echo -e "line$#*425 with space \t     "  | sed 's/[[:blank:]]\{4\}$//' | od -b
0000000 154 151 156 145 060 052 064 062 065 040 167 151 164 150 040 163
0000020 160 141 143 145 040 011 040 012
0000030

削除は、空白の単語の後ではなく、行末で発生します。タブ(011)まだそこにいます。

ベストアンサー1

あなたのコード例があなたの質問と一致しないようです。あなたのコード例はグループ化されていないので、何も引用しないで\1ください\2。これはあなたが求めるものと同じです。

sed 's/space[[:blank:]]\{4\}/space/' <<< "line$#*425 with space          "

おすすめ記事