rm 默认情况下不删除不可写文件背后的想法是什么?

rm 默认情况下不删除不可写文件背后的想法是什么?

rm 默认情况下不删除不可写文件背后的想法是什么?每次您想要删除当前用户不可写的文件但您对目录具有写权限时,都会收到此警告,并且需要按“y”确认删除:

rm: remove write-protected regular file 

我想知道为什么不可写文件要以如此特殊的方式处理?我想到的一件事是,此类文件通常是用户配置文件,其中包含用户秘密数据(例如加密密码),因此 rm 在删除它们之前会发出警告。现在,真正的原因是什么?

答案1

这是因为 UNIX 在这种情况下的行为有点违反直觉。当许多人将文件标记为只读并且有人能够删除它时,他们感到非常惊讶。您只需要对包含的目录具有写入权限即可删除文件。 rm出于礼貌而询问您,以防您希望它是只读的以保护它。

使用-f(武力)将使其在不纠缠你的情况下做到这一点。但请小心使用。

答案2

我认为你对它的提示是正确的,因为它被设置为不被写入。如果您要删除不可写文件,实际上您正在写入该文件。如果您不想收到提示,您可以随时创建一个别名,其中 rm 实际上是 rm -f。

相关内容