[英]command loop in sh script
我正在树莓上创建一个sh脚本以进行延时拍摄。 我已经在脚本4命令中包含了该命令,该命令将连续发生,每个命令都经过测试并且可以运行。 现在我的问题是:如何无限期地返回到最后一个命令之后的第一个命令?
#!/bin/bash
sudo raspistill -w 1024 -h 768 -o /home/pi/timelapse/a%04d.jpg -t 600000 -tl 30000
sudo kill $(ps ax | grep 'timelapse' | awk '{print $1}')
sudo avconv -r 10 -i /home/pi/timelapse/a%04d.jpg -r 10 -vcodec libx264 -crf 20 -g 15 timelaps$
sudo rm /home/pi/timelapse/*.jpg
所以在sudo rm /home/pi/timelapse/*.jpg
我想回到第一个命令。
你有什么主意吗?
谢谢。
您可以使用循环:
#!/bin/sh
while true; do
...
done
或者,重新调用脚本:
#!/bin/sh
...
exec $0 "$@"
坦白地说,由于您根本不执行任何错误检查,因此这两种情况中的任何一种似乎都存在风险,并且存在进入相对快速的命令循环不断失败的风险。 至少,您应该通过使用while sleep 1;
来暂停一下while sleep 1;
而不是while true;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.