VBS サブフォルダの再帰処理について
VBScriptでファイルリストを出力しようと考えています。
そこでフォルダ内のファイルを再帰的に検索したいのですが、上手くいきません。
C:\A\B\C\D\○○.txt
C:\A\BB\C\D\××.txt
C:\A\BBB\C\D\△△.txt
のようにB,BB,BBBの部分のみ可変にしたいのです。
例えば C:\A\B\CC\D\○○.txt C:\A\B\CCC\D\○○.txt のような
B以外のフォルダのサブフォルダについては再帰検索はいきたくありません。
(A,C ,D については引数で与えようと考えています。)
よいロジックはないでしょうか?
ご存知の方がいらっしゃいましたらぜひ教えてください。
出力形式は
ファイル名,作成日時
以下 色々参考にして作成したプログラム。
これだと指定フォルダ以下すべて検索にいってしまいます(-_-;)
---------------------------------------------------------------
Dim fso
Dim folder
Set fso = CreateObject("Scripting.FileSystemObject")
Dim pass
pass ="C:\" & args.item(0) & "\"
Dim subFolder
For Each subFolder In folder.SubFolders
ShowSubfolders FSO.GetFolder(pass)
Next
Sub ShowSubFolders(Folder)
Dim file
For Each file In folder.Files
WScript.Echo _
file.Name & "," & _
file.DateCreated
Next
For Each subFolder In folder.SubFolders
ShowSubFolders subFolder
Next
End Sub
お礼
ありがとうございました。「再帰」という言葉が持つ意味を深く考えすぎたようです。『再帰検索』はあったほうが便利ですね。