タグ

Linuxとreplaceに関するdgdgのブックマーク (1)

  • 複数ファイル内文字列を一括置換する方法

    Linuxを使っている場合の「複数ファイル内文字列を一括で置換する方法」のメモです。 sedとforコマンドを使って一気に処理させます。 変換元ファイルをバックアップファイル(.bak)にコピーし、置換処理後のファイルを変換元ファイルに上書きします。 for FILE in *.txt; do cp $FILE $FILE.bak; sed -e "s/置換前文字列/置換後文字列/g" $FILE.bak > $FILE; done 拡張子を変えればtxtファイルだけではなく、htmlファイルやphpファイルなどにも対応できます。 もしも予定していた通りに変換できなかった場合は、.bakファイルから元に戻します。 予定していた通りに変換できたら、.bakファイルを削除すれば完了です。 特定の行頭文字列から始まる行を処理したい場合などは、正規表現を使って for FILE in *.txt;

    複数ファイル内文字列を一括置換する方法
  • 1