为什么 Bash 中有多个命令来完成同一项任务?

为什么 Bash 中有多个命令来完成同一项任务?

我读过这个邮政,但它没有解决冗余问题。

举个例子,我注意到有三个不同的命令用于返回已登录的用户:

  • w(?)
  • who(打印当前登录的所有用户名)1
  • users(列出当前登录的用户)1

我知道输出略有不同,但在这个例子中是否有实际的冗余用例?使用带有多个参数的单个命令不是更好吗?我想问题归结为是否存在防止合并 Bash 命令的策略,以及当命令在功能上重叠时是否有最合适的命令索引。

1根据此目的指数bash 命令。

编辑回应[暂停]:

我不是在征求意见。我是在问为什么会有重叠的命令,因为这很令人困惑。我想知道当命令重叠时,哪些命令是最好的命令。我不是在否定个人品味。我知道有些人更喜欢某些软件。@Rinzwind 在评论中提到我的问题可能是关于向后兼容性的,我认为他是对的。是否有一种系统的方法可以在每个新版本的 Ubuntu 中包含或排除某些 Bash 命令,以便像我这样自 Unix 时代以来就没有参与过的人可以从操作系统中获得最大利益?

答案1

这叫自由!

这是使用你认为正确的东西的自由。这是发挥创造力的自由。这是不必忍受软件公司限制的自由。这是必须独立思考的自由。

它是 Linux!

可能大多数程序都比你老,而且起源于 Unix。但老的并不一定不好。


正如您在评论中所说:

我担心的是类似的命令是否违反了 DRY 原则。

这与干燥. 不要重复自己你的代码,没错。但是分叉代码更改代码;发挥创造力!

如果您需要限制,请使用 Microsoft、Apple 或其他产品,但不要使用 Linux。


更多详情请阅读:Linux、GNU 与自由

相关内容