Linux コマンド|複数ファイル内の同じ文字列を別の文字列に一括置換する方法


複数ファイル内の同じ文字列を別の文字列に一括置換するコマンドについて記載する。


複数ファイル内の同じ文字列を一括置換コマンド

下記のコマンドで、「置換前の文字列」と「置換後の文字列」を指定して、コマンドを実行すると、ファイル名の語尾が「.txt」となっている複数のファイル内の文字列「置換前の文字列」を「置換後の文字列」に一括で置換することができる。


・コマンド

find /work/*.txt | xargs -L 1 sed -i 's/置換前の文字列/置換後の文字列/g'


例えば、/work ディレクトリ配下の複数のファイル test_01.txt、 test_02.txt、 test_03.txt 内の文字列「apple」を「orange」に一括置換したい場合、下記のコマンドを実行して、一括置換することができる。


・コマンド

find /work/*.txt | xargs -L 1 sed -i 's/apple/orange/g'


これは、bash シェルスクリプトで置換処理で実施する場合でも、使用すると便利である。




スポンサーリンク

0 件のコメント :

コメントを投稿