プロが教えるわが家の防犯対策術!

フォルダ内にある複数のファイルを、ファイル名を残したまま、
中身だけ空にする方法を教えてください
(ファイル名は、拡張子が変わっても構いません)。
Ms.dosのコマンドか、バッチファイルでも結構ですし、
他にやり方があれば、教えて頂けるとありがたいです。
よろしくお願いします。

A 回答 (3件)

フォルダの中のすべてのファイルが対象でいいなら、バッチファイルで、



cd /d 対象フォルダ
for %%A in (*) do copy NUL %%A

と簡単にできます。
対象フォルダの部分をタイプミスすると、バッチファイルのあるフォルダが全部空ファイルになってしまいますので、注意。
    • good
    • 0
この回答へのお礼

バッチファイルで、こんなに簡単に処理ができるのですね。
驚きました。もっと勉強する必要を感じます。
ありがとうございました。
ただ、ファイル名の中にスペースのあるファイルが
うまく行きませんでした。何かやり方があるのでしょうか。
教えていただければ、ありがたいです。
よろしくお願いします。

お礼日時:2013/10/14 01:47

No2です。



>ファイル名の中にスペースのあるファイルがうまく行きませんでした。

copy NUL "%%A"
で。
    • good
    • 0

自分だったらですが、



1) dirコマンドでファイルの一覧をフルパスで取得。

Windows TIPS:dirコマンドでファイル名の一覧を取得する - @IT
http://www.atmarkit.co.jp/ait/articles/0412/04/n …

2) ファイル一覧をExcelに取り込みし、空のファイルを該当ファイル名にコピーするバッチファイルを作成。

A1セルに「c:\hoge\hoge1\対象ファイル1.txt」が入ってる、c:\に空ファイル.txtという空のファイルがあるとして、
B1に、
="copy """&"c:\空ファイル.txt"" """&A1&""""
以下下向きにコピーし、

copy "c:\空ファイル.txt" "c:\hoge\hoge1\対象ファイル1.txt"
copy "c:\空ファイル.txt" "c:\hoge\hoge2\対象ファイル2.doc"
copy "c:\空ファイル.txt" "c:\hoge\hoge2\hoge100\対象ファイル3.xls"
など。

3) バッチファイル実行。

とか。
    • good
    • 1
この回答へのお礼

ご回答いただき、恐縮です。
参考になりました。
ありがとうございます。

お礼日時:2013/10/14 09:54

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!