VBSの質問です

hogeフォルダにvbsが置かれています
hogeフォルダ内のサブフォルダ内のa.htmlを探し
hogeフォルダ内の全htmlファイルを取得し
一つ上のフォルダのテキストファイルに入力したいと思うのですがうまく動きません
どうすれば動くでしょうか?よろしくお願いします

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2014/12/05 10:54:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
id:fashudifhajs
targetFolderName = "."

Set fs = WScript.CreateObject("Scripting.FileSystemObject")
Set targetFolder = fs.getFolder(targetFolderName)
Set parentFolder = targetFolder.ParentFolder
Set output = fs.CreateTextFile(parentFolder.Path & "\list.html", True)
For Each folder In targetFolder.SubFolders
    For Each f In folder.Files
        If f.Name = "kekka.html" Then
            output.WriteLine "http://" & targetFolder.Name & "/" & folder.Name & "/"
        End If
    Next
Next
targetFolderName = "../"
For Each folder In targetFolder.files
    For Each f In folder.Files
        If f.Name = "*.html" Then
            output.WriteLine "http://" & targetFolder.Name & "/" & folder.Name & "/"
        End If
    Next
Next
output.Close

ベストアンサー

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154

ポイント100pt

以下の二つの質問のスクリプトを、ひとつにまとめます。
http://q.hatena.ne.jp/1417475886
http://q.hatena.ne.jp/1417531694

こんな感じになります。

targetFolderName = "D:\test\hoge"   ' ※ hoge フォルダのパス

Set fs = WScript.CreateObject("Scripting.FileSystemObject")
Set targetFolder = fs.getFolder(targetFolderName)

Set parentFolder = targetFolder.ParentFolder
Set output = fs.CreateTextFile(parentFolder.Path & "\list.html", True)
output.WriteLine "アドレス一覧"

' hoge フォルダのサブフォルダにある a.html を探す
For Each folder In targetFolder.SubFolders
    For Each f In folder.Files
        If f.Name = "a.html" Then
            output.WriteLine "http://" & targetFolder.Name & "/" & folder.Name & "/" & f.Name
        End If
    Next
Next

' hoge フォルダにある .html ファイルを探す
For Each f In targetFolder.Files
    If fs.GetExtensionName(f.Path) = "html" Then
        output.WriteLine "http://" & targetFolder.Name & "/" & f.Name
    End If
Next

output.WriteLine "以上"
output.Close
id:fashudifhajs

ありがとうございます!

2014/12/03 00:11:48

その他の回答0件)

id:a-kuma3 No.1

回答回数4973ベストアンサー獲得回数2154ここでベストアンサー

ポイント100pt

以下の二つの質問のスクリプトを、ひとつにまとめます。
http://q.hatena.ne.jp/1417475886
http://q.hatena.ne.jp/1417531694

こんな感じになります。

targetFolderName = "D:\test\hoge"   ' ※ hoge フォルダのパス

Set fs = WScript.CreateObject("Scripting.FileSystemObject")
Set targetFolder = fs.getFolder(targetFolderName)

Set parentFolder = targetFolder.ParentFolder
Set output = fs.CreateTextFile(parentFolder.Path & "\list.html", True)
output.WriteLine "アドレス一覧"

' hoge フォルダのサブフォルダにある a.html を探す
For Each folder In targetFolder.SubFolders
    For Each f In folder.Files
        If f.Name = "a.html" Then
            output.WriteLine "http://" & targetFolder.Name & "/" & folder.Name & "/" & f.Name
        End If
    Next
Next

' hoge フォルダにある .html ファイルを探す
For Each f In targetFolder.Files
    If fs.GetExtensionName(f.Path) = "html" Then
        output.WriteLine "http://" & targetFolder.Name & "/" & f.Name
    End If
Next

output.WriteLine "以上"
output.Close
id:fashudifhajs

ありがとうございます!

2014/12/03 00:11:48

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません