DirGetSize


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

ディレクトリのサイズを取得します。

DirGetSize(path [, flag = 0])

引数

path サイズを取得するディレクトリのパス。
flag (省略可) 関数の動作を指定します。以下の値を組み合わせです。
0 = デフォルト。
1 = 拡張モードが有効です。詳細情報を含む配列を返します。詳細を参照してください。
2 = サブディレクトリを除外する。

戻り値

成功時 サイズ。
失敗時 -1 @error を 1 に設定します。

詳細

拡張モード時に返される配列は以下の通りです。
$aArray[0] サイズ
$aArray[1] ファイル数
$aArray[2] ディレクトリ数


#include <MsgBoxConstants.au3>

Example()

Func Example()
    Local $vSize = DirGetSize(@HomeDrive)
    MsgBox($MB_SYSTEMMODAL, "", "サイズ(MB): " & Round($vSize / 1024 / 1024))

    $vSize = DirGetSize(@WindowsDir, 2)
    MsgBox($MB_SYSTEMMODAL, "", "サイズ(MB): " & Round($vSize / 1024 / 1024))

    Local $hTimer = TimerInit()

    $vSize = DirGetSize("\\10.0.0.1\h$", 1)

    Local $iDiff = Round(TimerDiff($hTimer) / 1000) ; 秒単位の時間

    If IsArray($vSize) = 1 Then
        MsgBox($MB_SYSTEMMODAL, "", "サイズ(バイト): " & $vSize[0] & @CRLF _
                 & "ファイル数: " & $vSize[1] & @CRLF & "ディレクトリ数: " & $vSize[2] & @CRLF _
                 & "TimeDiff(Sec): " & $iDiff)
    EndIf
EndFunc   ;==>Example