こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

UNIX コマンドで 複数ファイルの文字列置換の方法

UNIX初心者です。
UNIXのコマンドで複数のファイルの中身を同時に置換できないでしょうか?

自分で探しては見たのですが、"sed"しか見つかりません。
sed 's/aaa/AAA/g' <file1> file2
という方法では、ひとつずつなので、時間がかかってしまいます。
UNIXコマンドには、ありませんでしょうか。
また、無ければどのような知識が必要でしょうか。
私の知識が少ない為、内容が判りにくいとは思います。
すみませんが、よろしくお願いします。

投稿日時 - 2003-11-18 19:44:15

QNo.709137

困ってます

質問者が選んだベストアンサー

シェルスクリプトを書くのが普通だと思います。
例えばCシェルならば

foreach f ( `ls` )
 sed 's/aaa/AAA/g' < ${f} > ${f}_changed
end

という具合にすれば、カレントディレクトリの全ての
ファイルについて、変換して新しいファイルを作ります。

#Cシェルのスクリプトなんか「普通」じゃないという
#人もいますが、あしからず。

投稿日時 - 2003-11-18 20:03:25

お礼

早急な御回答ありがとうございます。
そうですね。シェルスクリプトで作ればよかったんですね。

投稿日時 - 2003-11-18 21:11:53

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問