我已经知道共享空间路径:\sharespace\test1
我使用此行来获取此路径下的最新更新文件夹:
$lastbuild=get-childitem $var.droppath.TrimEnd()|where-object {$_.name -match "10."} |Sort-Object -Property LastWriteTime -Descending | Select-Object -First 1
$lastbuild.fullname.TrimEnd()
我得到的是\\sharespace\test1\10.0.1212.1
我如何获取此文件夹的大小?我使用了以下代码,但只获取其父路径的总大小\\sharespace\test1
$mapbuild.mapNetworkDrive("u:",$lastbuild.fullname.TrimEnd())
$fsobuild = new-Object -com Scripting.FileSystemObject
$dobuild = $fsobuild.getdrive("u:")
Write-host "Size of latestbuild:"
$dobuild.totalsize
答案1
这看起来正是您所需要的:脚本专家关于获取文件夹大小的文章
我认为需要注意的是,powershell 通常可以本地处理 UNC 路径,因此无需映射驱动器。您应该可以执行以下操作:
$fsobuild = new-Object -com Scripting.FileSystemObject
"{0:N2}" -f (($fsobuild.GetFolder($lastbuild.Fullname).Size) / 1MB) + " MB"