読者です 読者をやめる 読者になる 読者になる

Database JUNKY

MySQL,MariaDBを中心としたブログです

指定ディレクトリ内にあるテキストファイルの特定の文字列を一括で更新

Linux Centos

指定ディレクトリ内にあるテキストファイルの特定の文字列を一括で更新するワンライナーです。 当該コマンドは、サブディレクトリの特定文字列も置き換えます。

f:id:hit10231023:20160510124713p:plain

grep -lr 変更前文字列 * | xargs sed -i 's/変更前文字列/変更後文字列/g'

以上です。たとえば、shell内に記載している、SQLのテーブル名を一括変更するのに重宝するかもしれないし、重宝しないかもしれません

grep -lr TABLE_A * | xargs sed -i 's/TABLE_A/TABLE_V/g'

当該コマンドを実行すると、ざっくり、既存のファイルを置き換えるので、作業前、あらかじめバックアップしておいたほうがいいかもしれませんね。