我遇到这种情况: 我有一个bash文件,其中有3个变量
ora=$(date +"%H.%M")
curdate="ore_$ora"
slideshow=$(date +"%Y-%m-%d")
此bash文件由cron每5分钟自动执行一次(xx:00和xx:05)。 因此,例如,如果脚本在2015年5月26日17:30运行,我分别有这些输出:17.30; ore_17.30; 2015年5月26日
但是这个bash文件需要2分钟(由于一些必要的睡眠命令)才能运行,在这2分钟后它将是17:32。
在一些命令之后,在这2分钟之后,在这个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?
提前致谢! 贾科莫
答案 0 :(得分:3)
您需要export
您希望在子shell和子流程中看到的任何变量。
curdate="ore_$ora"
export curdate
您也可以将它组合成一行。
export curdate="ore_$ora"