标题: [文件操作] 批处理如何删除无后辍名文件但不误删其他文件? [打印本页]
作者: bobgjs 时间: 2009-2-10 17:44 标题: 批处理如何删除无后辍名文件但不误删其他文件?
一串简单的命令,可以删除电脑里所有的文件,但突然,我发现,没有文件后辍名的文件怎么整?
-
- @echo off
- for /f %%j in (exe rar txt doc xls dll ) do (
- for /d %%i in (c d e f g h i j k ) do (del %%i:\*.%%j /f/s/q)
- )
复制代码
结果留下一堆没有后辍名的文件,如何在这样删除指定后辍名的文件的同时,删除掉无后辍名的文件呢?
我试了一下用通配符“*”,结果一个文件没剩下。@_@
作者: namejm 时间: 2009-2-10 18:21
先删除指定后缀的文件,然后,dir列出所有的文件,再过滤掉哪些含有后缀的文件即可,演示如下(删除有风险,请注意备份数据):- @echo off
- for %%i in (c d e f g h i j k) do (
- for %%j in (exe rar txt doc xls dll) do del /f /q /s %%i:\*.%%j
- for /f %%j in ('dir /a-d /b /s') do if "%%~xj"=="" del /f /q "%%j"
- )
- pause
复制代码
作者: wxcute 时间: 2009-2-10 18:50
del "%%~dpi%%~ni" 2>nul
作者: yslyxqysl 时间: 2009-2-10 20:37
删除有风险,下手须谨慎。^_^- @echo off
- for /d %%i in (c d e f g h i j k ) do (
- for /f %%j in (exe rar txt doc xls dll) do del "%%i:\*.%%j" /f/s/q
- del "%%i:\*." /f/s/q
- )
复制代码
[ 本帖最后由 yslyxqysl 于 2009-2-10 20:39 编辑 ]
作者: namejm 时间: 2009-2-10 20:44
删除无后缀文件用 del "*.",简洁!
作者: lvsehuaxue 时间: 2011-3-1 20:11 标题: 是不是可以更简练些
- @echo off
- for %%i in (c d e f j k) do (
- if exist %%i: del /s /q /f %%i:\*>nul 2>nul
- )
复制代码
[ 本帖最后由 lvsehuaxue 于 2011-3-1 20:12 编辑 ]
作者: CrLf 时间: 2011-3-1 22:02
我记得我曾经回过这个帖子吧,怎么回复消失了
(@for %%i in (*) do del /f %%~ni)>nul 2>nul
[ 本帖最后由 zm900612 于 2011-3-1 22:03 编辑 ]
作者: CrLf 时间: 2011-3-1 22:04
全盘的话也可以:
(@for %%i in (c d e f g) do del /f /s %%i:\*.)>nul 2>nul
作者: CrLf 时间: 2011-3-1 22:05
sorry,网络不好,发重了,本楼作废...
[ 本帖最后由 zm900612 于 2011-3-1 22:08 编辑 ]
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |