【问题标题】:Why does anyone think "alias rm='rm -i'" is a good idea?为什么有人认为“alias rm='rm -i'”是个好主意?
【发布时间】:2013-10-02 17:24:39
【问题描述】:

我使用了许多系统,其中rmrm -i 的默认别名。我不得不假设这是为了让用户检查他们正在删除的内容,但实际上我只看到这种训练用户习惯性地使用rm -rf,这会适得其反。它不仅增加了所需的工作量并训练用户使用更危险的命令,而且还意味着有效地删除了 rm 的许多功能(警告用户只读和丢失文件)。我了解适合 rm -i 的特定用例,但对于全局别名来说,这似乎是一个糟糕的主意。

所以我重复我的问题:为什么会有人认为这是个好主意?

【问题讨论】:

  • 您可以通过添加 \ 来取消别名 cmd,例如 \rm 在这种情况下不会扩展别名。
  • @FredrikPihl 知道这一点非常有用,谢谢。
  • 您也可以在自己的本地设置文件中简单地unalias rm

标签: bash alias sh rm


【解决方案1】:

rm -rf 是一个传奇般的危险命令,任何 shell 用户都应该知道如何避免它,无论他们设置了什么别名。同时,alias rm = rm -i 在我看来一直是一种明显且必要的保护措施,因为 rm 是不可逆转的,不像将文件发送到垃圾箱。

【讨论】:

  • 我同意,每当我看到有人输入rm -rf folderIjustmade/.. 时,我都会感到畏缩。但在这样的系统上之后,人们还是习惯性地使用它,所以我很好奇为什么会这样是默认值。
  • rm 当然不是不可逆转的。 ln foo bar; rm bar; ln foo bar; 第三条命令恢复第二条。
  • 嗯,这不是一个常见的用例,至少对我来说不是。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-12
  • 2019-10-26
相关资源
最近更新 更多