在学习 del 命令之前,我们可以在 dos 系统下执行 “del /?” 命令,查看 del 命令的帮助信息:
C:\Users\huangxin>del /?
删除一个或数个文件。
DEL [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
ERASE [/P] [/F] [/S] [/Q] [/A[[:]attributes]] names
names 指定一个或多个文件或者目录列表。
通配符可用来删除多个文件。如:*.txt 删除所有的 txt 文件
如果指定了一个目录,该目录中的所有文件都会被删除。
/P 删除每一个文件之前提示确认。
/F 强制删除只读文件。
/S 删除所有子目录中的指定的文件。
/Q 安静模式。删除全局通配符时,不要求确认
/A 根据属性选择要删除的文件
属性 R 只读文件
S 系统文件
H 隐藏文件
A 存档文件
I 无内容索引文件
L 重分析点
- 表示“否”的前缀
如果命令扩展被启用,DEL 和 ERASE 更改如下:
/S 开关的显示句法会颠倒,即只显示已经删除的文件,而不显示找不到的文件。实例1:删除 a.txt 文件
C:\Users\administrator\Desktop\bat> del a.txt实例2:删除 a.txt 文件,删除前给出提示
C:\Users\administrator\Desktop\bat> del /P a.txt
C:\Users\administrator\Desktop\bat\a.txt,要删除(Y/N)吗? y实例3:删除指定目录中的所有txt文件
C:\Users\administrator\Desktop\bat> del demo\*.txt执行上面命令将删除 demo 目录下面所有的 txt 文件。如果 demo 下面还有子目录,子目录中的 txt 文件会被删除吗?答案是肯定的,需要用到 /S 参数,如下:
C:\Users\administrator\Desktop\bat> del /S demo\*.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\b.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\c.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\b.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\c.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\bak\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\bak\b.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\bak\c.txt当然也可指定多个目录,如下:
C:\Users\administrator\Desktop\bat> del /S demo\*.txt demo2\*.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\c.txt
C:\Users\administrator\Desktop\bat\demo\d.txt
拒绝访问。
删除文件 - C:\Users\administrator\Desktop\bat\demo\e.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\bak\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo2\c.txt
C:\Users\administrator\Desktop\bat\demo2\d.txt
拒绝访问。
删除文件 - C:\Users\administrator\Desktop\bat\demo2\e.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo2\sub\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo2\sub\bak\a.txt上面的 “拒绝访问” 是因为文件为只读文件,不能删除。可以使用 /F 参数强制删除。如下:
C:\Users\administrator\Desktop\bat> del /F /S demo\*.txt demo2\*.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\c.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\d.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\e.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo\sub\bak\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo2\c.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo2\d.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo2\e.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo2\sub\a.txt
删除文件 - C:\Users\administrator\Desktop\bat\demo2\sub\bak\a.txt实例4:删除 demo 目录下面 txt 文件属性为隐藏文件的 txt 文件。
C:\Users\administrator\Desktop\bat> del /A:H demo\*.txt其中:/A 表示根据属性过滤,H表示隐藏文件。/A:H 表示删除具有隐藏属性的文件