スクリプト作成の 2 日目で、powershell について読む前の週です。おそらくいくつかのサブフォルダーから特別なconfiguration.zipアイテムを整理するタスクが与えられましたか? サイズが大きすぎます。そのため、空のフォルダーがあるというエラーを防ぐために、1 KB を超えるフォルダーを検索しました。
今、次の操作でフォルダーを長さで並べ替えたいと思いました:
$_.Length -gt 10KB
$_.PSIsContainer -eq $True
質問: 2 つ以上のパイプラインを使用して、1 行で両方の操作を行うにはどうすればよいですか? 今のところ、私のスクリプトはもちろん他のすべての操作を上書きします。
それが可能であることを示すページを見つけました: http://technet.microsoft.com/en-us/library/ee176927.aspx
しかし、単純に両方の操作を次々に実行しようとすると、スクリプトでエラーが発生します。だから:どのように私は動作するように両方の操作を書く必要があります。
どうもありがとうございました!
私のスクリプト:
$startFolder = "C:\data1"
$colItems = (Get-ChildItem $startFolder -recurse | Measure-Object -property length -sum)
"Mother of all Folders $startFolder -- " + "{0:N2}" -f ($colItems.sum / 1MB) + " MB"
**$colItems = (Get-ChildItem $startFolder -recurse | Where-Object {$_.PSIsContainer -eq $True} )
$colItems = (Get-Childitem $startFolder -recurse | where-Object {$_.Length -gt 1000KB} | Sort-Object Length -descending)**
foreach ($i in $colItems)
{
$subFolderItems = (Get-ChildItem $i.FullName | Measure-Object -property length -sum)
$i.FullName + " -- " + "{0:N2}" -f ($subFolderItems.sum / 1MB) + " MB"
}