在多個文件我有我寫的劇本有問題:批處理文件刪除多個文件夾中保存最近的X文件的每個文件夾
@echo off
e:
cd folder1
cd logs
cd App1
for /F "skip=20 delims=" %%F in ('dir /b/o-d/a-d log11101*.*') do del "%%F"
該腳本可以很好地用於1個文件夾。它保留20個最新的日誌文件,並刪除文件夾中以「log11101」開頭的所有其餘文件(因爲我不想使用此腳本刪除這些文件夾中的其他日誌文件... 我想在多個文件夾中應用此腳本,但這些腳本都在FOLDER1中,使用相同的「for/f」skip = 20 ......................... .........做德爾「%% F」 我因子評分做這樣的事情,因爲父文件夾的是FOLDER1 /日誌:
@echo off
e:
cd folder1
cd logs
cd App1
for /F "skip=20 delims=" %%F in ('dir /b/o-d/a-d log11101*.*') do del "%%F"
cd ..
cd App2
for /F "skip=20 delims=" %%F in ('dir /b/o-d/a-d log11101*.*') do del "%%F"
但它不工作,它的工作原理! 1個文件夾,但另一方面,它會刪除所有,但1個文件,而不是保持20個文件,並刪除其餘部分。
會不會有一種方法對於我來說,我想把所有的文件夾與腳本,像這樣的東西,只運行這個腳本一次? :
x:/folder1/logs/app1
x:/folder1/logs/app2
x:/folder1/logs/app4
for /f "skip=20...............
感謝