del命令怎么排除掉自己啊
bat吧
全部回复
仅看楼主
level 1
a2659802 楼主
想实现删除当前目录下的非.c后缀文件,但是会把自己(这个bat程序)给删掉了,怎么才改能不删了自己呢?
for /f "tokens=*" %%i in ('dir /b/s^|findstr /i "\.[^c]*$"') do del %%i
[怒]这是运行前的
运行后,代码整理.bat也没了[委屈]
2018年01月16日 05点01分 1
level 12
@echo off
echo 请将文件放置前一目录
cd /d 文件夹name
for /f "tokens=*" %%i in ('dir /b/s^|findstr /i "\.[^c]*$"') do del %%i
2018年01月19日 23点01分 3
补充2楼代码
2018年01月19日 23点01分
好吧,这也是个解决办法,不过我发现它不能删除.ncp结尾(包含c字符的都不删),有没有办法改进一下?
2018年01月20日 02点01分
level 12
回复楼主:是您代码的问题–排除了含有c字符的文件
2018年01月20日 07点01分 4
level 12
@echo off
echo 请将文件放置前一目录
cd /d 文件夹name
for /f "tokens=*" %%i in ('dir /b/s^|findstr /i "\.[^c]*$"') do del %%i
del /s /a /q /f *.ncp*
pause
2018年01月20日 07点01分 5
代码试一试
2018年01月20日 07点01分
level 13
改变扩展名
bat改成cmd
放心可运行
2018年01月22日 02点01分 6
level 9
有个简单的办法
把自己改为隐藏属性
删除所有文件(不含隐藏文件)
把自己的属性改为非隐藏
删除所以隐藏属性的文件
2018年01月28日 13点01分 7
level 10
可以用IF命令排除掉自己的。
@echo off
for /f "tokens=*" %%i in ('dir /b/s^|findstr /i "\.[^c]*$"') do if not "%%~nxi"=="%~nx0" echo;del "%%i"
pause
2018年02月01日 14点02分 8
哇,还有这种骚操作,谢谢dalao[乖]
2018年02月04日 12点02分
level 6
把bat后面加一个看“c”
2018年02月05日 03点02分 9
level 12
你也用Devc++
2018年03月25日 15点03分 10
1