• ベストアンサー

ファイルの自動削除方法について

WindowsNTを使用しています。 フォルダ中のファイルで、更新日<処理日-12ヶ月のものを抽出し、削除候補リスト・テキストデータ(フォルダ名・ファイル名等)を出力します。 その削除候補リストを確認後、削除候補ファイルをバックアップし、自動削除を行います。 このような処理について、何か良い方法がありましたら教えて下さい。 以上、宜しくお願い致します。

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

  • ベストアンサー
  • mann555
  • ベストアンサー率46% (29/62)
回答No.3

WSHとはWindows Scripting Hostの事です。 詳細はMicrsoftのサイトを参照してください。

参考URL:
http://www.microsoft.com/japan/developer/scripting/default.asp
edp-k
質問者

お礼

mann555さん、回答有難うございました。 ファイルの削除のサンプルがありましたら、教えていただけませんか。 以上、宜しくお願い致します。

その他の回答 (2)

  • mann555
  • ベストアンサー率46% (29/62)
回答No.2

取りあえずWSHで「更新日 - 処理日(ラストアクセス) >=12ヶ月」のもの を抽出する(画面に出力)サンプルです =============================================================== Dim fso, f, f1, fc Set fso = CreateObject("Scripting.FileSystemObject") Set f = fso.GetFolder(folderspec) Set fc = f.Files For Each f1 in fc if (datediff("m",f1.DateLastModified,f1.DateLastAccessed) >= 12) then wscript.echo f1.name end if Next =============================================================== 画面に出力する部分をファイルなりに書くように変更し あとはバッチなりでそれを読み込み処理すればいいと思います。

edp-k
質問者

お礼

mann555さん、早速の回答有難うございました。 初歩的な質問で申し訳ないのですが、WSHとは何ですか? サンプルは、MS-DOSのコマンドで作成されているのですか? 御迷惑でなけれは、どういうことをしているか解説して頂けませんか? 以上、宜しくお願い致します。

  • ykkw_2001
  • ベストアンサー率26% (267/1014)
回答No.1

それ専用のプログラムを作るのが一番だと思います。 「自動削除」というのが、「決まった時間に削除する」という意味なら、タスクスケジューラが役に立つでしょう。 プログラムは、使用環境(自分のPCなのか他の人のか、趣味用か業務用かなど)に合わせて、使い慣れた言語で作りましょう。 カンタンにできるかどうかは、その人のスキルと飲み込みの早さ次第なんで、なんともいいにくいですが、 全く初心者で、趣味用途、ツールを持っていない方を想定して、手軽で安上がりな順で行くと・・・ バッチファイル WSH(VBスクリプト) VBA(officeなどがあるとして) VB DELPHI ・・・ VC ・・・ といったところでしょうね。 業務用なら、VBあたりで外注が安定・確実でしょう。上記仕様なら、VB自体より安く1日程度でできそう。 手間がかかっても、全くお金を掛けたくないなら、ターボC(16bit版タダ)をお勧めしますが、初心者ですと3ヶ月くらい覚悟で・・・・

edp-k
質問者

お礼

ykkw_2001さん、回答有難うございました。 全くの初心者ですので、バッチファイルをどのように作成したらよいか教えていただけませんか。 できたら、サンプルのバッチファイルがあると助かるのですが。 お手数ですが、宜しくお願い致します。

関連するQ&A

専門家に質問してみよう