Home » WSH・Windows Script Hostの使い方 » 不要なhtmlファイルを削除するVBScript

WSH, Windows Script Host, VBScript

私が最近よく利用しているツールで、一時的なhtmlファイルを自動的に生成するものがあります。

生成されたhtmlファイルは、不具合を生じさせるようなものではないのですけれど、時々削除するほうが私は気持ちよく仕事をできます。

そのために簡単なVBScriptを作りましたので公開しておきます。

[スポンサードリンク]

不要なhtmlファイルを削除するサンプルスクリプト

不要なhtmlファイルの存在するフォルダーで、以下のスクリプトを実行して、確認メッセージで[はい]をクリックすると、そのフォルダーに存在するhtmlファイルが削除されます。

ただし利用しているツールで必要な「_template.html」ファイルは残しています。

Option Explicit

If MsgBox("htmlファイルを削除しますか?", vbYesNo) = vbNo Then
 Wscript.Quit
End If

With CreateObject("Scripting.FileSystemObject")
 Dim path_ 'As String
 path_ = .getParentFolderName(WScript.ScriptFullName)

 Dim f 'As Scripting.File
 For Each f In .GetFolder(path_).Files
  If .GetExtensionName(f.Name) = "html" Then
   If f.Name <> "_template.html" Then
    f.Delete
   End If
  End If
 Next
End With

MsgBox "削除しました!"

サンプルの解説

スクリプトファイルの置かれているフォルダーのパスを、FileSystemObjectオブジェクトのGetParentFolderNameメソッドの引数に、WScriptオブジェクトのScriptFullNameプロパティを指定することで取得して、
 With CreateObject("Scripting.FileSystemObject")
  Dim path_ 'As String
  path_ = .getParentFolderName(WScript.ScriptFullName)

FolderオブジェクトのFilesプロパティで取得した、フォルダー内に含まれる全ファイルに対してFor Each~Nextループを回し、
 Dim f 'As Scripting.File
 For Each f In .GetFolder(path_).Files

FileSystemObjectオブジェクトのGetExtensionNameメソッドで取得した拡張子が「html」で、
  If .GetExtensionName(f.Name) = "html" Then

ファイル名が「_template.html」でなかったときに、
   If f.Name <> "_template.html" Then

FileオブジェクトのDeleteメソッドで削除しています。
    f.Delete

上記の処理を開始する前に確認のメッセージを表示して、[いいえ]が押されたときにはWScript オブジェクトのQuitメソッドでスクリプトを終了しています。
 If MsgBox("htmlファイルを削除しますか?", vbYesNo) = vbNo Then
  Wscript.Quit
 End If

[スポンサードリンク]

Home » WSH・Windows Script Hostの使い方 » 不要なhtmlファイルを削除するVBScript

「WSH・Windows Script Hostの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.