1. ホーム
  2. bash

[解決済み】SEDをワイルドカードで使用する場合

2022-02-17 13:14:57

質問

ワイルドカードで文字列を置換したいのですが、うまくいきません。

文字列は "some-string-8 "のようです。

私が書いたのは

sed -i 's/string-*/string-0/g' file.txt

が、出力は

some-string-08

解決するには?

アスタリスク(*)は「前項目で0個以上」を意味します。

任意の1文字にマッチさせたい場合は

プレ sed -i 's/string-./string-0/g' file.txt

任意の文字列(つまり、任意の1文字を0回以上マッチさせたい場合)には

プレ sed -i 's/string-.*/string-0/g' file.txt