2

Windows には、次のようなディレクトリ構造があります。

\Root 
    \SUB-DIR1
        \A1
        \B1
        \AA1
    \SUB-DIR2
        \A2
        \C2
        \AA2
   \SUB-DIR3
        \A3
        \B3
        \AA3

「'AA' で始まり、サブディレクトリ名の長さは 3 です」などのクエリを使用してディレクトリ(ファイルではなく) をカウントしたいと思います。

私はもう試した:

$f = get-childitem -Path C:\ROOT -recurse 
Write-Host $f.Count 

...しかし、特定の子アイテムをフィルタリングしてその数を取得する方法がわかりません。Powershell または Cmd が大いに役立ちます。

4

1 に答える 1

1

ディレクトリ名を正規表現と一致させます。パターンは、開始 ( )、取得 ( )、もう 1 文字ある ( )、および文字列の終了 ( ) の文字列^AA.$に一致します。ドットは、AAA、AAB、AA のような dirs とほぼ何にでも一致します。なども含まれます。そのようです、^AA.$

# In addition, include only directories by checking PsIsContainer
gci Root -Recurse | ? { $_.PsIsContainer -and $_.name -match "^AA.$" }

カウントを取得する方法としては、gci を配列に出力してそのカウント メンバーを確認するか、結果を渡してMeasure-Objectカウント メンバーを選択します。

于 2013-06-27T04:47:11.777 に答える