如果你这样做(在 bash 中):
ENV_ONE=1 ENV_TWO=2 command
command
将在其调用中接受并使用环境变量。但是,如果您这样做:
ENV_ONE=1 ENV_TWO=2 clear && command
clear
将使用命令行上设置的环境变量,它们不会传递给命令。如果您想执行以下操作,这是一个问题:
alias command='clear && command'
我四处搜索,但找不到代表命令之前的环境变量的 bash 内置函数。我的问题是:如何将 CLI 声明的环境变量传递给第二个命令?
最佳答案
别名的经验法则是“如果你不得不问,请改用函数”。由于 command
与内置冲突,我将调用您的命令 foo
:
foo() { clear && command foo "$@"; }
ENV_ONE=1 ENV_TWO=2 foo
这按预期工作。
关于linux - Bash 命令行环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22772844/