任意のフォルダに含まれるファイルの一覧(サブフォルダにあるものも含めます)を作成したいです。
MS-DOSのdirコマンドを使うのが手っ取り早いと思ったのですが、圧縮フォルダ(zip圧縮)を多用しており、この圧縮フォルダに含まれるものも一覧に含めたいのです。
フリーソフトを含めて、新しいソフトの導入が不可能な環境であり、WindowsXP、Officeの標準機能で、というのが条件になります。
MS-DOSのバッチファイル、WindowsScriptingHostとかVBScriptないし、Microsoft OfficeのVBA等で実現する方法はないでしょうか。
(サンプルスクリプト等あると、なおありがたいです)
xxxyahho氏のご回答を、試してみましたか?
ダウンロードされたzip.vbs.zipの中には、拡張子がvbsのファイルが7本と、ドキュメントが3本含まれます。すべて、メモ帳で参照可能です。
動作確認の際は、ファイルを印刷して、メモ帳などで手入力すれば良いです。こうすれば、「新しいソフトの導入」は不要です。
回答ありがとうございます。
手持ちのテキストエディタで内容を読み始めています。
xxxyahhoさんへの返信に書きましたが、ファイルの一覧の取得のためにその展開が必要そうなので、それを前提にロジックを組もうとしています。
>ファイルの一覧を取得するには一度展開する必要があるのでしょうか。
展開は不要です。下記コマンドでできます。
(2) 表示
CScript.exe ListZIP.VBS ZIPファイル...
ただ、ZIPのリスト表示はこれでできるとして、問題はDIR /Sの部分をvbsで記載できる知識をお持ちかどうかということです。
DIR /Sの間に出てくるxxxx.zipの行をフィルタして、そこに上記のCScript.exe ....の出力結果を入れることも考えられますが、それなりに大変です。
ファイル名、タイムスタンプ、サイズ程度であれば、再帰を使ってVBSで組んだほうが簡単そうです。
そうですね。
取得したリストをファイル、フォルダ、zipファイルに振り分けて、フォルダとzipファイルの場合は、さらにその下を掘り進むというものを考えてます。
再帰のロジックを組み込んだPGMを組んだことはないのですが、勉強がてら挑戦してみようと思います。
回答ありがとうございます。
サンプルコードとして読ませて頂いてます。
圧縮と展開のパターンが幾つかあるところまでは分かりました。
ファイルの一覧を取得するには一度展開する必要があるのでしょうか。