如何用批处理命令删除某一文件夹下的文件

来源:百度知道 编辑:UC知道 时间:2024/07/05 04:49:12
这个批处理是要发给别人的,在不确定他文件所在盘符的情况下,让他把批处理放到该文件夹,让这个命令实现删除该文件夹下的某3个文件,然后删除该文件夹下一个子文件夹里的一个文件

@echo off
set 该文件夹=%~dp0
set name1=删除某名1.txt,删除某名2.txt,删除某名3.txt
set name2=该文件夹下一个子文件夹里的一个文件名.txt
for %%a in (%name1%) do del "%该文件夹%%%a"
del /s/q/a "%该文件夹%%name2%"
:::上面是最简单的代码,如有需要请补充说明

:::下面是另一种方法(只要给出文件名全盘搜索再删除)
@echo off
set name1=删除某名1.txt,删除某名2.txt,删除某名3.txt
set name2=该文件夹下一个子文件夹里的一个文件名.txt

SetLocal EnableDelayedExpansion
echo 正在搜索文件夹...
for /f "delims=\" %%i in ('fsutil fsinfo drives^|find /v ""') do (
set var=%%i
set drive=!var:~-2!
fsutil fsinfo drivetype !drive!|find "固定">nul &&call :slz !drive!
)
exit

:slz
if "%1"=="" goto:eof
for %%a in (%name1%) do (
for /f "delims=" %%b in ('dir/s/a-d/b %1\%%a 2^>nul') do del "%%a"
)
del /s/q/a "%1\%name2%"