Bash 脚本说它在我的终端上有无效选项

时间:2021-07-12 22:08:15

标签: linux ubuntu terminal

我有一个 shell 脚本,在 shebang 中有以下内容:

#! /usr/bin/env -S NODE_NO_WARNINGS=1 node --experimental-json-modules

当我运行脚本时,出现此错误:

/usr/bin/env: invalid option -- 'S'
Try '/usr/bin/env --help' for more information.

我确认当我在另一台有 bash 终端的机器上运行这个脚本时,它工作正常。我对 bash 内部结构相当陌生。我错过了什么?

我正在运行的 Bash 版本:

$ echo $BASH_VERSION
  4.4.20(1)-release

2 个答案:

答案 0 :(得分:0)

就你而言

#! /usr/bin/env NODE_NO_WARNINGS=1 node --experimental-json-modules

也会这样做。

答案 1 :(得分:0)

是的,删除 -S 选项是一种解决方法。但我最终将我的 linux coreutils 更新到 8.30。 8.30 添加了对 -S 的支持。所以,现在这个脚本不仅对我有用,而且我正在运行最新版本的构建。谢谢大家。

相关问题