パターンを含む文字列を置き換えるためにsedを使用したいと思います。

パターンを含む文字列を置き換えるためにsedを使用したいと思います。

というファイルには次の行がありますref.list

234      ./XYZ_SiteMetric_TIMESTAMP.dat

456      ./XYZ_Site_TIMESTAMP.dat

私はそれらを作らなければなりません:

234      SiteMetric

456      Site

私のスクリプトは次のコマンドを使用します。

sed -i 's/\*SiteMetric\*/SiteMetric/g' ref.list

sed -i 's/\*Site\*/Site/g' ref.list

リストファイルには同様の行がたくさんあります。

を使用してスクリプトを実行するとsh -xエラーはなく、コマンドが実行されます。ただし、ファイルには何も変更されません。

注:XYZ_2行の部品は常に同じです。しかし、timestamp部品は異なります。

ベストアンサー1

任意数の文字の構文はです.**前の文字または式に一致する数だけを示します。つまり、.*表示されている一致の数に関係なく、.すべての文字と一致することができます。

おすすめ記事