ファイルのコピーと文字列の置換

ファイルのコピーと文字列の置換

log_REPLACEファイルをコピーし、ファイル名の文字列をファイルの文字の合計に置き換えるスクリプトを作成しようとしています。REPLACEAB

だから文字列がそれぞれ文字AとBに変わるlog_A、とを作りたいと思います。log_bREPLACE

私の考えでは:

cp log_REPLACE log_A
cp log_REPLACE log_B
grep -rl REPLACE  | xargs sed -i 's/REPLACE/A/g'

ただし、最終的には2つのコピー(* Aと* B)で書き換えられます。もっと良い方法がありますか?

ベストアンサー1

可能なファイル名の部分文字列を繰り返し、に置き換え、STDOUTを必要なファイル名でsed保存できます。sed

for i in a b; do
    sed "s/REPLACE/$i/g" log_REPLACE >"log_$i"
done

必要に応じて必要な変更を行います。

おすすめ記事