Windows 資源管理器搜尋帶子字串的檔案名

Windows 資源管理器搜尋帶子字串的檔案名

有史以來最令人困惑的功能設計

我嘗試在目錄中搜尋帶有 date 的檔案xxx.01.22.xxx。我已經嘗試過 name:01.22name:*.01.22.*沒有出現。 (我親自檢查後,該文件就在那裡。)

此搜尋的正確語法是什麼?哪些特殊字元會擾亂 Windows 檔案名稱搜尋? (順便說一句,我想我根本無法透過數字搜尋檔案名稱…)

自從Windows 10問世以來,我一直在努力使用Windows資源管理器搜索框,即使是簡單的檔案名稱搜索,我也從未能夠有效地使用它。有沒有關於如何使用此功能的好的課程?

答案1

星號 * 是 Windows 檔案名稱的通配符。只要 01.22 實際上出現在檔案名稱中(而不是檔案日期元資料),只需在兩側使用一個星號即可:

*01.22*

這將搜尋檔案名稱中任何位置包含「01.22」的任何檔案。您不需要“名稱:”前綴。

但是,如果您想根據修改日期元資料搜尋文件,請使用以下字串格式:

修改:01/22/2021 .. 01/23/2021

「修改:開始日期..結束日期」。日期格式可能存在文化差異,具體取決於您的 Windows 配置的國家/地區。我的是 en-US。

根據您上傳的圖像再添加一條評論,無論您在何處開始搜索,它都會在該位置和任何子資料夾中查找,但不會在其他地方查找。如果您在桌面上搜索,它只會搜索桌面位置。如果要搜尋整個磁碟機,可以從根目錄(例如 c:\)開始,但這可能需要一些時間,具體取決於磁碟機上的檔案數量和存取速度。最好從您知道包含要查找的文件的資料夾開始,即使它位於子資料夾中。

答案2

使用PowerShell,一行即可完成,先開啟PowerShell:

Win+ R>>輸入powershell>>Enter

使用類似以下程式碼的程式碼,使用時替換路徑和日期:

Get-ChildItem -Path 'path\to\folder' -Force -Recurse | where {$_.LastWriteTime -ge [datetime]"2021-01-22 00:00" -and $_.LastWriteTime -le [datetime]"2021-01-23 00:00"}

這應該會給你你想要的。

答案3

感謝@Seven 的完美答案。它位於響應部分,因此我無法選擇它作為答案。在此引用一下

名稱:~=01.22作品參考:https://answers.microsoft.com/en-us/windows/forum/windows_10-win_cortana/searching-for-a-string-within-a-filename-in-file/3cd4f5a6-cf33-4323-93b8-eb0d3904770f

相關內容