如何将第二次运行和以后运行的停止时间指定为开始时间?
$start = currenttime;
while true;
./run_test.sh -input_param=$start
stop=$(date +%Y%m%d%H%M%S --date "2018-03-12 01:45:55");
sleep 10;
done
答案1
您可以将日期存储到内存中,例如存储到临时文件系统文件系统类似(/dev/shm/lastexec.tmp)或像这样进入磁盘(/tmp/lastexec.tmp)。
最好将日期存储到磁盘上的临时文件中,因为内存存储是易失性的:
start="$(cat /tmp/lastexec.tmp)"
while true
do
./run_test.sh -input_param=$start
date +%Y%m%d%H%M%S --date "2018-03-12 01:45:55" > /tmp/lastexec.tmp
sleep 10
done
但是使用 时date +%Y%m%d%H%M%S --date "2018-03-12 01:45:55"
,日期在下一次脚本运行期间不会更改,因为您已经修复了它。输出仍然相同20180312014555