如何使脚本自动重启


How do i make the script auto-restart

如何使脚本自动重启我认为最后一行存在一些问题。

#!/bin/bash
# a shell script that keeps looping until an exit code is given
php_command="php -q -f $1.php "
shift
nice $php_command $@
ERR=$?
..............
..............
exec $0 $@

我收到以下错误exec: 36: ss.sh: not found

您可以在 bash 中使用set -e和一个简单的while循环:

#!/bin/sh
set -e
php_script=$1.php
shift
while true; do
    php $php_script $@
done

一旦 PHP 脚本返回非零的退出代码,bash 脚本将停止。如果需要在循环完成后运行任何代码,可以改为执行以下操作:

while php $php_script $@; do
    continue
done

与其重复执行 PHP 脚本,不如将其更改为 PHP 脚本本身中的循环?