我是 PowerShell 的相对新手,想了解更多关于函数、CmdLet 和人类可读值的信息。通常是为了学习新事物,看看别人做得很好。
所以我去找了一个Get-DiskUsage CmdLet 的源代码。
我可以 。将其输入 PowerShell,然后调用该函数。
不知何故,无论我如何称呼它,它总是使用当前目录来获取结果。
我错过了什么,它不会采用给定的 -Path 参数?
PS D:\bin> . .\DiskUsage.ps1
PS D:\bin> Get-DiskUsage -Path D:\ -h
Size Folder
---- ------
405M
PS D:\bin> Get-DiskUsage -Path C:\ -h
Size Folder
---- ------
405M
PS D:\bin> C:
PS C:\> Get-DiskUsage -Path C:\ -h
Size Folder
---- ------
18G
PS C:\>
脚本输出不正确,因为这是SysInternals DiskUsage 工具du显示的内容:
D:\bin>du C:\
Du v1.4 - report directory disk usage
Copyright (C) 2005-2011 Mark Russinovich
Sysinternals - www.sysinternals.com
Files: 93367
Directories: 22541
Size: 21.817.875.778 bytes
Size on disk: 22.127.992.832 bytes
D:\bin>du D:\
Du v1.4 - report directory disk usage
Copyright (C) 2005-2011 Mark Russinovich
Sysinternals - www.sysinternals.com
Files: 132832
Directories: 15125
Size: 130.137.231.457 bytes
Size on disk: 54.992.396.288 bytes
D:\bin>du D:\bin
Du v1.4 - report directory disk usage
Copyright (C) 2005-2011 Mark Russinovich
Sysinternals - www.sysinternals.com
Files: 3118
Directories: 222
Size: 424.866.944 bytes
Size on disk: 288.858.112 bytes