我需要從已經具有擴展名類型的列表中刪除具有相同名稱但擴展名不同的多個文件。使用TXT列表刪除具有不同擴展名的多個文件
我有一個批處理程序要查找一個文件,字符串和做出成果文本
@echo off
findstr /m "1090 FF" *.info > results.txt
if %errorlevel%==0 (
echo Found! logged files into results.txt
) else (
echo No matches found
)
這將創建文件的擴展名爲。信息列表。然後,我需要採取該列表並刪除所有的文件列表的文件,但我需要刪除所有的兄弟文件。
example:
12345.info (in my list to del)
12345.cpr (need to del)
12345.emf (need to del)
12345.obj (need to del)
12345.timb (need to del)
我試圖用這一點,但它只是刪除了.info文件擴展名:
@echo off
REM Delete files/folders specified in a newline delimited txt file list.
set "default_list_path=C:\Users\%USERNAME%\Desktop\SAD_FF bat\results.txt"
if not "%~2"=="" echo Error: unexpected arguments& exit /b
if not "%~1"=="" (set "list=%1") else (
set "list=%DEFAULT_LIST_PATH%"
)
if not exist "%LIST:"=%" echo Error: list could not be found& exit /b
set /a delete_counter=0
for /f "delims=" %%I in ('type "%LIST:"=%"') do (
if exist "%%~fI" (
set /a delete_counter+=1
if exist "%%~fI"\* (
rd /s /q "%%~fI"
) else (
del /q "%%~fI.*"
)
) else (
echo No such path "%%~I".
)
)
echo.& echo %DELETE_COUNTER% files or folders were deleted.
可我後來的代碼擴充到德爾所有同級文件的?所有建議歡迎!
如果有一種方法,我可以擴大第一個代碼只將文件的名稱減去擴展名,那麼我可以簡單地刪除所有名稱。我怎樣才能做到這一點? – CMDneubie