PowerShell Get-DiskUsage CmdLet: como listar de uma unidade / diretório diferente?
Sou relativamente novato no PowerShell, queria saber um pouco mais sobre funções, CmdLet e valores legíveis para humanos. Geralmente, para aprender coisas novas, observar o que os outros fazem funciona bem.
Então eu fui olhar e esbarrei na fonte por umGet-DiskUsage CmdLet.
Eu posso . fonte isto em PowerShell, então chame a função.
De alguma forma, ele sempre usa o diretório atual para obter os resultados, não importa como eu o chame.
O que estou perdendo que não terá o parâmetro -Path dado?
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:\>
A saída do script não está correta, pois é isso que oSysInternals Ferramenta DiskUsagedu mostra:
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