到目前为止,我一直在使用 Ubuntu,rm
其目录的行为如下:
rm -r dir
如果为空则删除dir
,否则给出错误rm -rf dir
将递归dir
删除其内容
有可能它rm
是通过别名来实现这种行为的,但我无法再访问我的 Ubuntu 系统,所以我无法判断。
现在我切换到 Linux Mint,其行为有所不同:像在 Ubuntu 上rm -r
一样,以递归方式删除目录及其内容。rm -rf
我查看了rm
Linux Mint 上的手册页,试图找到可以重现 Ubuntu 行为的选项组合,但我找不到任何选项。
我的问题是:
- 为什么 Linux 发行版之间的行为
rm
不同?它不是一个应该在任何地方都相同的标准工具吗? - 我如何实现问题开头描述的行为?
答案1
它可能被rm
别名为你的 Ubuntu 系统上的某个东西(例如,在 .bashrc 中)。rm -r
在 Ubuntu 12.04 上为我删除了目录及其内容。rm -f
需要用于目录内容具有不同权限的情况(例如,只读文件)。
答案2
使用rmdir
命令,它只会删除空目录