• ベストアンサー

サブフォルダを含むある拡張子の複数のファイル全てを、指定したファイルに置換(上書き)するソフト

あるフォルダの配下の全てのフォルダ内にある、特定の拡張子のファイルを、指定した同じ拡張子のファイルに、(中身は問わず)置き換えたいのですが、そのニーズに対応したソフトをご存知でしたら、教えて下さい。 例えば、Aというフォルダ内のa00からa99までのサブフォルダ内にある、*.cgiというファイルを特定の●●.cgiに全て置換(上書き保存すること)したいのです。ちなみに、*.htmというファイルは全て異なる場合がありますので、ファイル内複数文字列の置換ソフトは使えません。。

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

  • ベストアンサー
  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.2

★やりたいことは分かりました。 ・1つのフリーソフトではないと思います。  つまり、検索したファイルをコピーする機能はありますが、そのファイルに決まった  同じファイルを上書きする機能はやっぱり特殊機能かと思います。 ・でも複数のフリーソフトを組み合わせてバッチファイルを作成すれば実現は出来ます。  そこで、こちらでも質問のアドバイスをします。 ・バッチファイルを作成する場合は『*.cgi』というファイルをパス付きで検索します。  その後、そのパスの前に『COPY 000.cgi 』という上書きするファイル名の文字列を挿入すれば作成できます。  後は、この作成したバッチファイルをダブル・クリックすれば上書きが実行されます。 作成手順1: ・フリーソフトの『TreeToText』を起動します。←先に下の URL からダウンロード&解凍して下さい。 ・『ディレクトリ名』に検索対象のフォルダを選択するか、自分で入力して下さい。 ・『出力ファイル名』に作成するファイル名を選択するか、自分で入力して下さい。→バッチファイル名です。例:copy_cgi.bat など ・ラジオボタンは『パス情報』を選択します。 ・パターンは『*.cgi』と入力します。 ・『作成後に開く』にチェックします。 ・『隠しファイルも対象』にチェックします。 ・『すべてのファイルが対象』にチェックします。 ・『保存』ボタンを押します。→ディスク検索され作成されます。 作成手順2: ・『作成手順1』で作成した『copy_cgi.bat』をメモ帳などで開きます。→『作成後に開く』にチェックしているので自動的に開く。 ・1行目の[]で囲まれた行は削除します。 ・すべてを選択して、その内容をクリップボードへコピーして下さい。 ・フリーソフトの『ClipFan』を起動します。←先に下の URL からダウンロード&解凍して下さい。 ・『文字列挿入』ボタンの左にある『設定』ボタンを押します。  『1』を選択して挿入文字列は『COPY 000.cgi "』と入力して『行頭』を選択します。  『閉じる』ボタンを押して『文字列挿入』ボタンを押します。 ・また『文字列挿入』ボタンの左にある『設定』ボタンを押します。  『1』を選択して挿入文字列は『"』と入力して『行末』を選択します。  『閉じる』ボタンを押して『文字列挿入』ボタンを押します。 ・『クリップボードへの書き込み』ボタンを押します。 ・開いていたメモ帳などに貼り付けます。 ・編集した内容を上書きで保存します。 その後: ・『作成手順2』で編集した『copy_cgi.bat』というバッチファイルをダブル・クリックすると実行されいます。 ・以上。おわり。→バッチファイルの編集内容を一度確認してから実行して下さい。

参考URL:
http://www.h4.dion.ne.jp/~fht/dev/m_ttt.html,http://www2u.biglobe.ne.jp/~shunbook/omocha/clipfan.htm
cumin2000
質問者

お礼

別件があり、お返事遅くなってしまい、大変申し訳ありませんでした。。 バッチファイルの作成手順、丁寧に解説して頂き、ありがとうございました!!今回の問題だけではなく、今後も何かと使える方法ですね。。 本当に、ありがとうございました!!

その他の回答 (1)

  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.1

★特殊処理すぎて見つからないと思います。 ・1回のみの処理ならば『バッチファイル』を作成して『COPY』コマンドで  置換(上書き)することが可能です。  『コマンド・プロンプト』から『DIR』コマンドの出力をリダイレクトして  バッチファイルを作成すれば可能です。→面倒ですが…。 ・今後、似たような処理を行う場合は VB Script などのスクリプトを作成すれば  いつでも簡単に実行できます。  質問者さんは VB Script を知っていますか?→補足要求です。 ・知っている場合は自作してみましょう。  自作できるのならば簡単なアドバイスをしますよ。 最後に: ・他のカテゴリで『ある拡張子のファイル全てを上書きするソフト』という質問を  していますね。回答者 No.1(SAYKA) さんと同じくもう少し詳しい置換法則を  補足してくれないとアドバイスが出来ません。→置換例をもうちょっと多めに  お願いします。補足する場合はね。 ・あと VB Script を作成する場合は  『コンピューター [技術者向け]』→『プログラミング』→『Visual Basic』の  カテゴリで質問してみましょう。→その場合は、この質問を締め切って下さい。 ・以上。おわり。→http://oshiete1.goo.ne.jp/qa2786343.htmlと対でやり取りを  行って下さい。

参考URL:
http://www.whitire.com/vbs/index.html
cumin2000
質問者

補足

ご回答、ありがとうございます! はい、同じ質問を別カテでもしておりました。。 今、その別カテで教えて頂いた方法を検討中ですが、何分プログラミングをしてたのがかなり前でしたので、記憶を辿っております。。 バッチ処理は良く聞くのですが、上記シェルと同じようなことですかね??バッチファイル作成はしたことはないです。あとVBスクリプトもやったことないです。。 私の説明が拙くて申し訳ありません。 やりたいことは、全サブフォルダ内にある、cgiという拡張子のファイル(名前はそれぞれ違ってるし、中身もそれぞれ違う。例;001.cgi~999.cgi)を、ある(例000.cgi)cgiファイルに(名前も、中身も。)置き換えたい(上書きしたい)んです。 いわゆる、通常の上書きコピーです。ですので、何かシェルのようなプログラムを組めば、簡単だろうとは思うのですが、こういうニーズは他にもありそう(特殊な処理でもなさそう??)だったので、何かフリーソフトがあれば嬉しいと思ったのですが。。 やはり特殊でしたかね…。フリーソフトでご存じなければ、質問を締切った方が良さそうですね。(VBスクリプトは初心者でも簡単なら別ですが。)