linux - 在 shell 脚本中传播值

标签 linux bash shell environment-variables

我有一个简单的脚本,它像使用计数变量一样使用 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/

相关文章:

linux - bash 脚本的新手 - 想要通过引用多次执行代码块

linux - Tcl/Tk - 如何在 OK 运行模拟时点击 OK 按钮使窗口消失

php - 修改(创建 PHP 扩展)Makefile 以包含 C++ 类和代码

linux - 我应该如何在 Yocto 生成的 rootfs 上 sed 文件?

bash - 终端中命令错误时播放声音

linux - 如何使用 bash 脚本翻转屏幕方向?

linux - 在 Linux 中登录时可以使用 control、shift 或其他特殊组合键作为密码吗?

linux - 使 Bash 模块化

python - 从另一个目录查找数据 (.txt) 并将名称保存在列表中

linux - Shell - 如何在第 n 次出现管道后删除特定字符串