sed は Stirng の末尾から数字を削除します。

sed は Stirng の末尾から数字を削除します。

文字列の末尾から数字を削除します(例:入力)。

example123
example321
example0123

予想出力:

example
example
example

私は成功せずに次のことを試しました。

sed 's/[0-9]\+$//' <in.txt >out.txt 

どうすればいいですか?

答え1

結果:

$ sed 's/[0-9]\+$//' <in.txt

例:

example
example
example

実行するコマンド()は出力をファイルsed 's/[0-9]\+$//' <in.txt >out.txtに送信します。out.txt

走るとcat out.txt希望の結果が得られます。

答え2

\+GNU sedで動作しますが、他の実装についてはわかりません。この試み

$ sed 's/[0-9]*$//' ip.txt 
example
example
example

$ # or if ERE option is available
$ sed -E 's/[0-9]+$//' ip.txt 
example
example
example

答え3

たぶん、いくつかのテキストの後にスペースがあるかもしれません。必要なく、$削除すると問題が解決します。

sed 's/[0-9]\+//' <in.txt >out.txt

答え4

他のファイルを作成する必要がないように入力ファイルに直接変更を適用するには、「-i」フラグを使用します。

sed -i -r 's/[0-9]+$//' in.txt

関連情報