rm
- 移除文件或者目录
rm [−fiRr] file...
rm移除每个给定的文件。默认情况下,它不能移除目录。但当给定了-r
或者-R
选项时,在指定目录之下的整个目录树都会被移除(而且对通过rm -r
能够移除的
目录树深度是没有限制的)。当文件路径末端部分只有"."和".."时会出错(可以用"
rm -r.*"来避免)。
如果给定了"-i"选项,或者指定文件不可写,而且标准输入是终端,又没有给定 "-f"选项,那么rm会提示用户是否要删除该文件,它写一个问题到标准错误stderr 并且从标准输入stdin读入一个应答。如果应答是否定的,该文件将被跳过。
"System V"接口定义禁止移除正在执行的可执行二进制文件的最后一个链接。
GNU的实现(fileutils)会因为可移除的层次深度的上限而招致损坏。(如果确实必
要,可使用deltree
工具来移除非常深的目录树。)
-d,--directory
用unlink(2)来替代rmdir(2)移除目录,而且不要求目录为空移除目录使 用的方式是unlink(2),而非rmdir(2),且在试图unlink目录之前不要求 其为空。这仅在你有合适权限时才能生效。因为unlink一个目录会导致在 删除目录下的文件非关联化,因此聪明的方法是在执行此之后fsck(8)文 件系统。
-f,--force
忽略不存在的文件,并且从不向用户提示。
-i,--interactive
提示是否移除每个文件。如果回答是否定的,文件将被跳过。
-r,-R,--recursive
递归地移除目录中的内容。
-v,--verbose
在移除每个文件之前打印其名称。
--help
在标准输出上打印用法信息,并且以成功状态退出。
--version
在标准输出上打印版本信息,然后以成功状态退出。
--
终止选项列表
本页介绍了包括在fileutils-3.16包中的rm;其他版本的可能会有细微的差别。