所以我的命令行技能有点生疏,我很难记住不同发行版操作系统中标志含义之间的差异。我也记不清所有的技术术语,所以手册页看起来真的很不清楚。
基本上,我在 Mac OS X 上,想删除一个目录及其所有内容。我主要担心的是,它会删除目录中的所有引用,包括 ../ 和 ../,<everything else, including ../'s own ../>
然后彻底搞砸我的整个系统。
我想要运行其中哪一个?
$ rm -R dir-name/
或者
$ rm -r
答案1
如果要删除foo/bar
,则需要的命令是rm -r foo/bar
(假设您正在包含 的目录中工作foo
)。这将删除bar
和 其中的所有内容,但保留foo
和 其中的其他任何内容。
rm -r
足够聪明,不会递归../
- 否则 everyrm -r
会删除所有内容。
答案2
如果你运行:
rm -r
如果不传递目录/文件参数,什么都不会发生。
以下之间没有区别:
rm -r xyz
rm -R xyz
rm -r xyz/
ETC。
答案3
如果您不想提示确认,您还可以添加 -f:
rm -rf xyz