gpt4 book ai didi

macos - shell :我可以在 mac 中使用类似 linux 的命令样式 `rm tmp/-fr`

转载 作者:行者123 更新时间:2023-12-01 07:05:12 24 4
gpt4 key购买 nike

比如说,我想在 shell 中删除一个 tmp/ 目录。

在 linux(如 ubuntu)中,我可以 rm tmp/-frrm -fr tmp/。但是在mac中,我只能rm -fr tmp/

有什么方法可以配置 mac shell (bash/zsh/...),这样我就可以使用类似 linux 的命令风格:rm tmp/-fr

最佳答案

rm tmp/-fr 中的操作数后有选项是非标准的。 IEEE Std 1003.1-2001 在 12.2 Utility Syntax Guidelines 节中有:

Guideline 9: All options should precede operands on the command line.

GNU 实用程序(大多数 Linux 发行版都使用)的实现者选择添加许多非标准扩展。虽然有时很方便,但使用这些扩展本质上是不可移植的。 MacOS X 有一个源自 BSD 的用户区,它没有大多数非标准 GNU 扩展。如果您希望将来使用非 GNU 系统(例如 BSD、Solaris 或任何其他商业 UNIX),那么坚持实用程序的标准语法并且不习惯任何 GNU 扩展确实是值得的。在使用所有不同的 UNIX 操作系统时,它可以省去很多麻烦。这在编写脚本时尤其真实且重要。在脚本中依赖 GNU 语法会使它们不可移植。

因此,与其在 MacOS X 上安装 GNU coreutils,我的建议是将其用作习惯标准语法(IEEE Std 1003.1、POSIX.2 等)的机会。

关于macos - shell :我可以在 mac 中使用类似 linux 的命令样式 `rm tmp/-fr`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10443271/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com