我有.sh
文件:a.sh
在这个脚本中,在最后一行,我有下一个:
rt = $(bash ...).
我想得到这个rt。我尝试做下一个:
bash a.sh
或echo $(bash a.sh)
,但它不显示rt
值。
我有.sh
文件:a.sh
在这个脚本中,在最后一行,我有下一个:
rt = $(bash ...).
我想得到这个rt。我尝试做下一个:
bash a.sh
或echo $(bash a.sh)
,但它不显示rt
值。
放在echo rt
脚本的末尾以将其打印到标准输出。
如果您无法修改原始脚本,您可以使用
source a.sh && echo ${rt}
正如@mouviciel 已经提到的,但为了额外的安全性(而不是覆盖你的env
),你可以在另一个子shell中使用它
bash
source a.sh && echo ${rt}
exit
或者$(source a.sh && echo ${rt})
您可以获取脚本以便在交互式会话的相同上下文中运行它:
source a.sh && echo ${rt}
使用“.”运行脚本 (例如. ./a.sh
)。这样就不会启动新的bash并且rt
变量将出现在调用者环境中。请注意,这样可以设置和/或修改其他变量。这可能会导致问题。