Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在shell脚本循环到达末尾后创建一个shell脚本循环_Shell_Loops - Fatal编程技术网

在shell脚本循环到达末尾后创建一个shell脚本循环

在shell脚本循环到达末尾后创建一个shell脚本循环,shell,loops,Shell,Loops,好吧,这就是我要做的。我希望这个脚本每15分钟运行一次。我已经尝试使用Crontab来运行它,但是Crontab不想为我工作。这很好,我相信有多种方法可以让这一切顺利进行 我有这个脚本在启动时自动运行,它执行良好。我想做的是,让它等待15分钟,然后从头开始重新运行。无限循环 #!/bin/sh SERVICE='wfica' if ps ax | grep -v grep | grep $SERVICE > /dev/null then echo "$SERVICE service ru

好吧,这就是我要做的。我希望这个脚本每15分钟运行一次。我已经尝试使用Crontab来运行它,但是Crontab不想为我工作。这很好,我相信有多种方法可以让这一切顺利进行

我有这个脚本在启动时自动运行,它执行良好。我想做的是,让它等待15分钟,然后从头开始重新运行。无限循环

#!/bin/sh
SERVICE='wfica'

if ps ax | grep -v grep | grep $SERVICE > /dev/null
then
echo "$SERVICE service running, everything is fine"
else
echo "$SERVICE is not running"
/home/rpitc/Desktop/Scripts/Iceweasel.sh & /home/rpitc/Desktop/Scripts/Login.sh
sleep 900
# start over
fi
脚本执行但不循环。我相信这是一个简单的解决办法,请原谅我的无知

谢谢

试试

#!/bin/sh
SERVICE='wfica'

while true; do 
  if ps ax | grep -v grep | grep $SERVICE > /dev/null
  then
  echo "$SERVICE service running, everything is fine"
  else
  echo "$SERVICE is not running"
  /home/rpitc/Desktop/Scripts/Iceweasel.sh & /home/rpitc/Desktop/Scripts/Login.sh
  fi
  sleep 900
done
while true; do
Your code here
done;

但是,对于这些事情,我会在服务脚本中添加一个对python脚本的调用,该脚本可以执行循环,负责检查并记录异常情况

我会通过cron来实现这一点,而不是绕过它。也就是说,
exec“$BASH\u SOURCE”
将重新执行当前脚本。但这似乎也是一个监视服务的脚本,在这种情况下,this和cron都不正确,正确的解决方案是使用init或守护进程监视工具(其中有很多)。谢谢Etan,我将了解守护进程监视工具。