我现在的情况是: 我有一个 bash 文件,其中有 3 个变量
ora=$(date +"%H.%M")
curdate="ore_$ora"
slideshow=$(date +"%Y-%m-%d")
这个 bash 文件由 cron 每 5 分钟自动执行一次(在 xx:00 和 xx:05)。 因此,例如,如果脚本在 26-05-2015 的 17:30 运行,我分别有这些输出: 17.30 ; ore_17.30 ; 2015-05-26
但是这个 bash 文件需要 2 分钟(由于一些必要的 sleep 命令)才能运行,并且在这 2 分钟之后将是 17:32。
在一些命令之后和这两分钟之后,在这个 bash 文件中有一个命令运行另一个 bash 文件(称为 sld.sh);在这个 sld.sh 中有一些 FTP 指令,尤其是一个
send "$curdate".jpg
(在此 sld.sh 中再次有 $curdate 变量和 $ora 变量)但现在 $curdate 是“ore_17.32”而不再是“ore_17.30”:我一定希望 $curdate 变量是我的初始父变量 (17.30),那么有没有办法“恢复”sld.sh 文件中的初始 curdate echo?
提前致谢! 贾科莫
最佳答案
您需要export
一般而言,您希望在子 shell 和子流程中看到的任何变量。
curdate="ore_$ora"
export curdate
您也可以将其组合成一行。
export curdate="ore_$ora"
关于linux - 如何从 "parent"bash 文件调用变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30446786/