我正在尝试让Get-ChildItem检索文件夹的内容,并显示文件夹中每个对象的大小,对象的名称和类型(文件/目录)。但是,我很难让只有这三列才能工作。
名称和长度很简单,但是如何显示文件和文件夹之间的差异?
最佳答案
检查PSIsContainer属性。文件夹设置为$ true,文件设置为$ false。这是一个例子:
Get-ChildItem | Foreach-Object{
New-Object PSObject -Property @{
Name = $_.Name
SizeMB = if($_.PSIsContainer) { (Get-ChildItem $_.FullName -Recurse | Measure-Object Length -Sum).Sum/1mb } else {$_.Length}
Type = if($_.PSIsContainer) {'Directory'} else {'File'}
}
}
关于powershell - Get-ChildItem文件/文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14030871/