このエントリーをはてなブックマークに追加


ファイルかフォルダーのどちらであるかを判定する

FileSystemObjectのFolderExistsメソッド, FileExistsメソッドの2つを使用して、引数で指定されたファイルまたはフォルダーがファイルなのかフォルダーなのかを判別するVBScriptサンプルコードを作成しました。
以下にVBScriptで作成したサンプルコードと実行結果について記します。


関連記事

FolderExistsメソッド, FileExistsメソッドを利用したファイル/フォルダー判別スクリプト

 1: Set oArgs = WScript.Arguments
 2: 
 3: If oArgs.Count <> 1 Then
 4:   WScript.Echo "Usage : " & WScript.ScriptName & " <file or folder path>"
 5:   WScript.Quit
 6: End If
 7: 
 8: Set fso = CreateObject("Scripting.FileSystemObject")
 9: If fso.FolderExists(oArgs(0)) Then
10:   WScript.Echo oArgs(0) & " is folder."
11: ElseIf fso.FileExists(oArgs(0)) Then
12:   WScript.Echo oArgs(0) & " is file."
13: Else
14:   WScript.Echo oArgs(0) & " is unknown or nothing."
15: End If
16: 
17: Set fso = Nothing
18: Set oArgs = Nothing

本スクリプトは引数で渡された文字列がファイルまたはフォルダーのどちらであるかを判別しています。
3行目から6行目までは引数の数に誤りがある場合、Usageメッセージを表示して終了しています。
8行目から15行目にFolderExistsメソッド, FileExistsメソッドを利用して、ファイルまたはフォルダーの判別をしています。

サンプルスクリプトの実行結果

以下に上記のVBScriptサンプルコードの実行結果を記します。

  • 引数をあたえていない場合
    C:\wsh>cscript /nologo FileOrFolder.vbs
    Usage : FileOrFolder.vbs <file or folder path>
  • 引数にC:\windowsをあたえた場合
    C:\wsh>cscript /nologo FileOrFolder.vbs c:\windows
    c:\windows is folder.
  • 引数に本スクリプトをあたえた場合
    C:\wsh>cscript /nologo FileOrFolder.vbs FileOrFolder.vbs
    FileOrFolder.vbs is file.
  • 引数に存在しないファイル(フォルダー)をあたえた場合
    C:\wsh>cscript /nologo FileOrFolder.vbs d:\hoge.txt
    d:\hoge.txt is unknown or nothing.


添付ファイル: fileFileOrFolder.vbs 819件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-03-20 (金) 22:50:35