del 命令 删除一个或数个文件。
或许你会听过这个命令 erase ,del 命令与erase命令等效,但我们常用del来删除一个或多个文件。
del只能删除文件,
其基本形式是: del [参数] 文件名
当删除不止一个文件时,可以跟";"号配合来删除
@echo off rem 删除当前目录下的test.txt del test.txt rem 删除当前目录下的a.txt,b.txt,c.txt del a.txt;b.txt;c.txt
del 的常用参数
/f 强制删除只读文件。
当我们要删除的文件含有只读属性时,不加f参数会提示是否删除只读文件
f强制的意思
@echo off rem a.txt有没有只读属性都强制删除 del /f a.txt
/s 从所有子目录删除指定文件。
加入s参数会搜出所有目录包括子目录的指定文件
@echo off rem 强制删除当前目录下所有目录包括子目录中的test.txt文件 del /f /s test.txt del /f a.txt
/q 安静模式。删除全局通配符时,不要求确认。
上一讲讲到的通配符,当与del命令配合使用时,要加q参数
安静即不会有任何提示
@echo off rem 删除当前目录下所有目录中的txt文件 del /f /q /s *.txt del /f a.txt
/a 根据属性选择要删除的文件。
根据帮助说明,我们知道可以用来指定删除某种属性的文件。
如当前目录下有一个隐藏文件hide.txt,那么
@echo off rem hide.txt含有隐藏属性,无法找到文件 del hide.txt pause rem h表示隐藏文件,指定删除隐藏文件hide.txt del /ah hide.txt del /f a.txt
同样我们也可用"-"来指定不删除某属性的文件
@echo off rem r表示只读文件,指定删除所有不包括只读的txt文件 del /f /s /q /a-r *.txt del /f a.txt
可使用的文件属性还有:
s 系统属性 , a 存档属性
实际应用中,由于删除的多个文件不清楚位置和属性,我们一般用:
@echo off rem 删除所有txt文件,不管是当前目录的什么位置和属性都删除 del /f /s /q /a *.txt