我有一个简单的脚本,它像使用计数变量一样使用 CAPDEPTH,并为每个值调用一些测试。
#!/bin/bash
# SCRIPT ONE
CAPDEPTH=1
...
while [ $CAPDEPTH -lt 11 ];
do
echo "cap depth - $CAPDEPTH"
make test-all-basics
let CAPDEPTH=CAPDEPTH+1
done
并排
eval "make test-all-basics"
它将对另一个 shell 脚本进行多次调用,我也希望它依赖于 CAPDEPTH 的值。以下是该脚本中的几行。
# SCRIPT TWO
...
R_binary="${R_HOME}/bin/exec${R_ARCH}/R"
capture_arg="--tracedir $(CAPDEPTH)"
...
我的问题是如何获取从脚本一传播到脚本二的 CAPDETH 值。这可能吗? 我已经尝试在两个脚本中导出变量 CAPDEPTH,但似乎不起作用。
最佳答案
#!/bin/bash
# SCRIPT ONE
CAPDEPTH=1
...
while [ $CAPDEPTH -lt 11 ]; do
echo "cap depth - $CAPDEPTH"
export CAPDEPTH # Makes it so that any child process inherits the variable CAPDEPTH and anything it contains.
make test-all-basics
let CAPDEPTH++ # Increments CAPDEPTH by +1
done
# SCRIPT TWO
...
R_binary="${R_HOME}/bin/exec${R_ARCH}/R"
capture_arg="--tracedir $CAPDEPTH"
...
关于linux - 在 shell 脚本中传播值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23177530/