Powershell 获取文件大小(kB或MB)

Powershell 获取文件大小(kB或MB),powershell,Powershell,我正在运行PS脚本以获取以kB/MB/GB为单位的文件大小(无论文件大小),但我没有获取文件大小。另外,如何在同一脚本中同时在另一台服务器中获取文件大小 Get-ChildItem D:\Test -rec | ? {! $_.PSIsContainer} | Select Name, @{L='Size';E={$_ | Convert-Size}} 名称大小 文件1.txt 文件2.txt 文件3.txt 文件4.txt 文件5.txt 文件6.txt 文件7.txt 文件

我正在运行PS脚本以获取以kB/MB/GB为单位的文件大小(无论文件大小),但我没有获取文件大小。另外,如何在同一脚本中同时在另一台服务器中获取文件大小

Get-ChildItem D:\Test -rec |
    ? {! $_.PSIsContainer} |
    Select Name, @{L='Size';E={$_ | Convert-Size}}
名称大小 文件1.txt 文件2.txt 文件3.txt 文件4.txt 文件5.txt 文件6.txt 文件7.txt
文件的大小保存在
Length
属性中。您可以使用
1KB
1MB
1GB
文字对其进行转换。例如,要获取以兆字节为单位的大小:

Get-ChildItem D:\Test -Recurse| 
? {! $_.PSIsContainer} |
Select-Object  Name, @{Name='Size'; Expression={[int]($_.Length / 1MB)}}
我把结果转换成整数,这样你就得到了一个整数

更新 要使用单位限定大小,可以将其转换为字符串并添加前缀

Get-ChildItem D:\Test -Recurse| 
? {! $_.PSIsContainer} |
Select-Object  Name, @{Name='Size'; Expression={([string]([int]($_.Length / 1KB))) + " KB"}}

成功了,谢谢。我怎样才能得到文件大小前面的kb或mb?名称大小-----文件1.txt 5文件2.txt 20文件3.txt 23文件4.txt 44文件5.txt 5045文件6.txt 2832文件7.txt2434@user9749652-见更新的答案。很好,非常感谢肖恩
Get-ChildItem D:\Test -Recurse| 
? {! $_.PSIsContainer} |
Select-Object  Name, @{Name='Size'; Expression={([string]([int]($_.Length / 1KB))) + " KB"}}