0

スクリプト作成の 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"
}
4

1 に答える 1