2012-05-03 20 views
-1

私はfindコマンドを使って遊んでいましたが、他に何か考えても構いませんが、何も動かないでしょう。特定のタイプのすべてのファイルをすべてのディレクトリとサブディレクトリに置き換えますか?

私のbashスクリプトは、特定のディレクトリとそのサブディレクトリのすべてのファイルタイプを見つけて、そのファイルを別のものに置き換えることができるようにしたいと思います。

EX: /home/test1/randomfolder/index.html

/home/test1/randomfolder/stuff.html

/home/different/stuff/index.html

を言うことができます

/home/different/stuff/another.html

これらの各.htmlファイルは、プログラムが/ home /を検索するディレクトリとして指定されている場合に見つかる必要があり、次に、別のファイルをエコーする。

これはbashでも可能ですか?

+0

あなたは 'unionfs'を使用して考えがありますか?このようなディレクトリツリーを重ねるために設計されています。 – FatalError

+0

他のファイルは何ですか? 'my_file_replace /家庭のようなコマンド作業/ index.htmlを/ tmpに/ new_index.html'なり、見つかったファイルの上に' new_index.html'をコピー?特定のファイルタイプではなく特定のファイル名ですか? –

+0

もちろん、あなたはそれを行うことができます、あなたは一生懸命やりませんでした...あなたは実際に何を試しましたか? – KurzedMetal

答えて

2

これは、多かれ少なかれ、あなたは正しい方向に行くを取得する必要があります:

for file in `find . -type f -name \*.html`; do echo "new content" > $file; done 
+0

これは文字通り正確に何とかしようとしていた.... 2日後です。ありがとうございます。 – Poisoned

+0

ああ、ちょうど1つのより多くの質問は、私が聞きしたいとの.htmlファイルを置き換えるファイルの拡張子を入力するユーザーを持っています。ファイルの拡張子を変更しても同じでない場合は、ファイルの拡張子を変更する必要はありますか? 私は$ extn = "。html"と$ deextn =彼らが入力したもの(ファイルのextnであり、htmlファイルを置き換えるもの) を持っているので、それらを.phtmlファイルで置き換えていました。コンテンツと拡張子を.phpに置き換える方法は? ありがとう – Poisoned

関連する問題