0
击等待信号以结束bash脚本不会开始与后执行命令化背景
逻辑:bash脚本的
- 起动执行必须在回地面开始a.php只会和将stdout 日志文件或/ dev /上a.php只会成功执行空
- B.php
- 误差与a.php只会错误执行B.php作为参数
但是,庆典开始a.php只会等待...
#ps -aux
root 27647 0.0 0.0 13336 652 pts/0 S+ 11:36 0:00 /bin/bash /var/www/scripts/bgluncher.sh -c php /var/scripts/A.php -l /var/log/A.log -p B.php
root 27648 0.7 0.2 332396 87544 pts/0 S+ 11:36 0:02 php /var/scripts/A.php
庆典:
#!/bin/bash
COMM=''
POST_CMD=''
LOG=0
while getopts ":l:c:p:" arg; do
case "${arg}" in
c)
COMM=${OPTARG}
;;
l)
LOG=1
LOG_File=${OPTARG}
;;
p)
POST_CMD=${OPTARG}
;;
esac
done
if [ -z "${COMM}" ]; then
echo `date` ' ERROR: [bgluncher.sh] -c argument is empty ' >> ${LOG_File}
else
if [ ${LOG} -eq 1 ] ; then
${COMM} >> ${LOG_File} && ${POST_CMD} || ${POST_CMD}/error=$2 &
echo $!
else
${COMM} >> /dev/null && ${POST_CMD} || ${POST_CMD}/error=$2 &
echo $!
fi
fi
exit
生存还是毁灭,什么错误我已经取得?
好的! 谢谢! 这是“$?”问题之一 其实PHP脚本等待/ arg1 = val1/arg2 = val2。 但bash仍在等待结束A.php并且不要在后台发送它 – Debster