9

特定のファイル マスクを含むファイル名のフォルダーを検索する PowerShell スクリプトを作成しようとしています。フォルダ内のすべてのファイルは、 のような形式になります*yyyyMd*.txt

私はスクリプトを作成しました:

[String]$date = $(get-date -format yyyyMd)
$date1 = $date.ToString
Get-ChildItem C:\Users\pelam\Desktop\DOM | Where-Object {$_.Name -like '*$date1*'}

しかし、これはうまくいかないようです..

誰でも助けることができますか?問題は、日付変数が正しくないことだと思われます。これは、以下のようなものをハードコーディングすると機能するためです。

Get-ChildItem C:\Users\pelam\Desktop\DOM | Where-Object {$_.Name -like '*20141013*'}
4

1 に答える 1

9

-match演算子で正規表現を使用するだけで、これを簡素化できます。

Get-ChildItem C:\Users\pelam\Desktop\DOM | Where-Object {$_ -match (Get-Date -format yyyyMMdd)}

また、V3 以降を使用している場合は、次のようにさらに簡素化できます。

Get-ChildItem C:\Users\pelam\Desktop\DOM | Where Name -match (Get-Date -format yyyyMMdd)
于 2014-10-14T16:32:31.487 に答える