【发布时间】:2019-09-12 17:16:40
【问题描述】:
OS: Ubuntu 18.04
Bash
我正在尝试让一个 shell 脚本将变量传递给另一个脚本并执行它。这是我尝试过的:
mainscript.sh
#!/bin/bash
# Master script
SUBSCRIPT1_PATH=~/subscript1.sh
test_string="The cat ate the canary"
(exec "$SUBSCRIPT1_PATH")
subscript1.sh:
#!/bin/bash
# subscript1.sh
echo $test_string
但是,当我这样做时:
bash mainscript.sh
我什么也得不到。关于如何做到这一点的任何想法?
【问题讨论】:
-
(exec "$SUBSCRIPT1_PATH")等价于"$SUBSCRIPT1_PATH" -
顺便说一句,
exec语句周围不需要括号。 -
使用
source命令或export。