簡體   English   中英

批處理文件,刪除文件夾中所有已存在10天以上的所有文本文件(某些文件除外)

[英]Batch file to delete all text files in a folder over 10 days old except certain ones

我是批處理文件的新手,嘗試編寫一個將刪除文件夾中已存在10天以上的所有.txt文件的文件,除了一個名為template.txt的文件。 怎么做? 我有以下內容,但是它將在10天內刪除所有txt文件。 感謝您的幫助。

forfiles /p "C:\test" /s /m *.txt /c "cmd /c del @path" /d -10

只需將條件實現到由forfiles運行的命令行中,如下所示:

forfiles /S /P "C:\test" /M "*.txt" /D -10 /C "cmd /C if @isdir==FALSE if /I not @file==0x22template.txt0x22 del @path"

if @isdir==FALSE部分是為了防止進一步處理任何目錄,以防目錄名末尾帶有.txt (盡管不太可能),因為forfiles枚舉了文件和目錄。

if /I not @file==0x22template.txt0x22 if /I not "<name of currently iterated item>"=="template.txt"if /I not "<name of currently iterated item>"=="template.txt"名為template.txt文件刪除。 /I選項使比較不區分大小寫,就像Windows也對待文件和目錄路徑一樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM