我正在尝试在检查用户个人资料的大小时弄清楚如何获得正确的数字。
远程执行此代码时,我得错了数字。
Invoke-Command -ComputerName $Server -Credential $credentials
-ScriptBlock {
$colItems = Get-ChildItem C:\Users | Where-Object {$_.PSIsContainer
-eq $true} | Sort-Object foreach ($i in $colItems) {
$subFolderItems = Get-ChildItem $i.FullName -recurse -force -ErrorAction Ignore | Where-Object {$_.PSIsContainer -eq $false} | Measure-Object -property Length -sum | Select-Object Sum
$i.FullName + " -- " + "{0:N2}" -f ($subFolderItems.sum / 1MB) + " MB" }
}
这给了我一些数字:C:\Users\admin -- 673.42 MB
但是当我在本地运行相同的代码时,它会显示47.9 MB
这是真正的值。
任何人都可以给我一个提示或解释为什么会这样。感谢
$ Server具有我之前在脚本中传递的服务器名称。除了上面代码的正确输出外,一切正常。