単語を置き換える sed コマンドが機能しない

単語を置き換える sed コマンドが機能しない

私はsedを使って次のように各行の単語を置き換えようとしています。

sed 's/\([^ ]*\), \([^ ]*\)/\2, \1/' sed.txt

これはsed.txtです:

FIRST LAST
FIRST LAST
FIRST LAST
FIRST LAST

しかし、うまくいきません。理由がわからない。私が望む結果は次のとおりです。

LAST FIRST
LAST FIRST
LAST FIRST
LAST FIRST

この例はマイナーなものであることを知っていますが、場所を変更せずに現在の場所で単語を置き換えるためだけに使用しているので、sedについてもっと知りたいです。

ベストアンサー1

sed 's/\([^ ]*\), \([^ ]*\)/\2, \1/' sed.txt

問題は元のテキストにないため、最初のカンマです。変更:

sed 's/\([^ ]*\) \([^ ]*\)/\2, \1/' sed.txt

そして働く

おすすめ記事