最初发布这个问题时,我完全用错了,获得了另一个合理但不同的问题,在这里得到了正确的回答。
以下是我最初想问的问题的正确版本。
在我的一个 Bash 脚本中,有一点我有一个变量SCRIPT,其中包含/path/to/an/exe在执行时输出一个line to be executed.
我的脚本最终需要做的是执行line to be executed. 因此脚本的最后一行是
$($SCRIPT)
所以$SCRIPT扩展为/path/to/an/exe, 并$(/path/to/an/exe)执行可执行文件并返回line to be executed, 然后执行。
但是,shellcheck在脚本上运行会生成此错误:
In setscreens.sh line 7:
$($SCRIPT)
^--------^ SC2091: Remove surrounding $() to avoid executing output.
For more information:
https://www.shellcheck.net/wiki/SC2091 -- Remove surrounding $() to avoid e...
$($SCRIPT)有没有办法以更合适的方式重写它?eval在这里似乎没有太大帮助。