rm
用于删除给定的文件和目录
补充说明
rm 命令 可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉。对于链接文件,只是删除整个链接文件,而原有文件保持不变。
注意:使用rm命令要格外小心。因为一旦删除了一个文件,就无法再恢复它。所以,在删除文件之前,最好再看一下文件的内容,确定是否真要删除。rm命令可以用-i选项,这个选项在使用文件扩展名字符删除多个文件时特别有用。使用这个选项,系统会要求你逐一确定是否要删除。这时,必须输入y并按Enter键,才能删除文件。如果仅按Enter键或其他字符,文件不会被删除。
语法
1 |
|
选项
1 2 3 4 5 6 |
|
参数
文件:指定被删除的文件列表,如果参数中含有目录,则必须加上-r
或者-R
选项。
实例
交互式删除当前目录下的文件test和example
1 2 3 |
|
删除当前目录下除隐含文件外的所有文件和子目录
1 |
|
应注意,这样做是非常危险的!
删除当前目录下的 package-lock.json 文件
1 |
|
查找 *.html 结尾的文件并删除
1 |
|
删除当前项目下 *.html 结尾的文件
1 |
|
删除当前目录下的 node_modules 目录
1 |
|
删除文件
1 2 |
|
删除目录
rm -r [目录名称] -r 表示递归地删除目录下的所有文件和目录。 -f 表示强制删除
1 2 |
|
删除操作前有确认提示
rm -i [文件/目录]
1 |
|
批量删除 icons
文件夹中的子文件夹中的 data 文件夹
1 |
|
rm 忽略不存在的文件或目录
-f 选项(LCTT 译注:即 “force”)让此次操作强制执行,忽略错误提示
1 |
|
仅在某些场景下确认删除
选项 -I,可保证在删除超过 3 个文件时或递归删除时(LCTT 译注: 如删除目录)仅提示一次确认。
1 |
|
删除根目录
当然,删除根目录(/)是 Linux 用户最不想要的操作,这也就是为什么默认 rm 命令不支持在根目录上执行递归删除操作。 然而,如果你非得完成这个操作,你需要使用 --no-preserve-root 选项。当提供此选项,rm 就不会特殊处理根目录(/)了。
1 |
|
rm 显示当前删除操作的详情
1 |
|