rm -rf / 和 rm -rf *.* 之间有区别吗?

rm -rf / 和 rm -rf *.* 之间有区别吗?

不这样做会rm -rf *.*损坏你的文件系统吗?rm -rf /

答案1

它没有什么特别的,rm -rf *.*就是一个带有文件名通配符的命令,它将递归删除当前目录中名称中包含点的所有文件。

rm -rf /rm尝试在根目录上运行时会出现错误。这由 POSIX 强制执行:

如果[...]操作数解析为根目录,R M应将诊断消息写入标准错误并且不对此类操作数执行任何操作。

根据 shell 及其设置,*.*也可能..与父目录匹配,但与 一样/,尝试删除它也是一个错误。

这些都不会损坏文件系统,rm只会(尝试)使用通常的文件系统调用来删除文件。如果第一个命令在包含重要文件的目录中执行,对整个系统或用户文件的影响当然可能很大。

相关内容