1

私はこれらの2つのスクリプトをまとめようとしています:

これは、すべてのディレクトリ内のすべてのファイルを一覧表示します。

dir -recurse | group-object Extension -noelement

そしてこれは、特定の日付以降に変更されたすべてのファイルを一覧表示します。

get-childitem –recurse | where-object {$_.lastwritetime -gt “1/13/2008”}

私の問題は、2番目のスクリプトがすべてのディレクトリのヘッダーを出力することです。

Mode                LastWriteTime     Length Name                                                                      
----                -------------     ------ ----                                                                      
d----        12/10/2012  11:21 AM            BUDGET                                                                    
d----        12/21/2012  12:38 PM            SPEND DOWN                                                                


    Directory: \\file\property\vt\Environmental Services\BUDGET\SPEND DOWN


Mode                LastWriteTime     Length Name                                                                      
----                -------------     ------ ----                                                                      
d----        12/13/2012  12:32 PM            2012                                                                      
d----         1/29/2013   9:50 AM            2013                                                                      


    Directory: \\le\property\vt\Environmental Services\BUDGET\SPEND DOWN\2012

私はこれらを次のようにまとめようとしました:

dir -recurse | group-object Extension -noelement | where-object {$_.lastwritetime -gt (Get-date).AddDays($somenumber)}

しかし、これでは何の結果も得られませんでした。

特定の日以降のすべての異なるタイプのファイルのカウントをすべてのディレクトリに再帰的に一覧表示するにはどうすればよいですか?

これが私の期待される出力です:

4352    .JPG
2352    .doc
2135    .pdf
1811    .xls
1472    
857 .pub
732 .xlsx
565 .docx
66  .rtf
64  .lnk
63  .ppt
61  .url
41  .png
38  .xml
28  .htm
27  .msg
4

1 に答える 1

2

dirgciはどちらもGet-ChildItemcmdLet のエイリアスです。グループ化する前にフィルタリングするだけです:

gci -Recurse| where {$_.LastWriteTime -gt (Get-Date).AddDays(-45)}| group Extension -NoElement
于 2013-01-30T22:04:39.370 に答える