![安全地使用‘rm -rf’](https://linux22.com/image/1602241/%E5%AE%89%E5%85%A8%E5%9C%B0%E4%BD%BF%E7%94%A8%E2%80%98rm%20-rf%E2%80%99.png)
我对 unix 还很陌生,我见过很多反对使用的警告rm -rf
。例如:“但是,在使用rm -rf
命令之前一定要仔细检查,如果你错误地在主目录或任何其他重要目录中输入此命令,它不会要求确认,但会删除那里的所有内容。”
rm -rf dirName
如果从主目录运行此命令,是否仍可以运行该命令后跟目录名( )而不删除其他重要内容?
一般来说,使用此命令时的安全规则是什么? 哪些命令绝对不能输入?在哪里输入?
答案1
rm
只会删除您指定的内容,因此从这个意义上讲,使用它总是安全的。它永远不会自行随机删除文件。
危险在于,很容易犯一个小的打字错误,最终导致rm
删除比你预期多得多的内容。
举个例子,假设您有一堆要删除的文本文件。当然,您可以通过键入rm *.txt
来删除它们。但是,如果您分心了,或者手指在键盘上打滑,然后输入rm * txt
错误,该怎么办?您只是删除了目录中的每个文件。
出于这个原因,我已将rm
其别名为rm -i
,这样它就会提示我删除每个文件。
答案2
此命令并不危险,但它确实会执行其指令,即删除内容。最安全的使用方法rm
是不要为其提供不必要的标志。
如果需要删除文件:
rm file
如果需要删除目录:
rm -r directory
仅-f
当您不关心文件或目录的权限时才应添加。在这种情况下,rm
如果它可以删除您无权写入的文件,则不会提示您。
您还可以添加-i
或-I
标志,以便rm
更频繁地询问您是否确实要删除传递给它的文件。