- 締切済み
viでディレクトリ内ファイル全置換方法
一括置換方法を探しています。 カレントディレクトリ以下すべてのディレクトリ内ファイルで、単語置換をしたいのですが、どのようにしたらよいでしょうか。 ググってみると、代替ファイル内置換の方法しかのっておらず、有用な情報を得られませんでした。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- entree
- ベストアンサー率55% (405/735)
回答No.2
vi でなくてもよいのであれば、 perl -i -pe 's/(src)/(dst)/g' * ※ src 正規表現、dst 置換文字列 でできると思います。 ディレクトリ以下全てであれば、 find (dir) -type f | xarg perl -i -pe 's/(src)/(dst)/g' といったところでしょうか。
- sakusaker7
- ベストアンサー率62% (800/1280)
回答No.1
タイトルにviでとありますが、viでやらなければいけないのですか? Perlか、sedやawkとfindを組み合わせるとかでやった方が楽にできると思いますけど。 #ed/exでもできるか?
補足
特にviでやる必要はないんですけど、普段viを使って書いてるので、なんとなくviでと書きました。