我正在制作此Bash脚本(请参见下文),该脚本应检查Node.JS文件是否正在运行,如果没有运行,它将重新启动该文件并继续循环。但是,当它尝试运行文件时,它不会继续。
这将在Ubuntu上运行,但目前我正在Windows 10上对其进行检查。我知道我可以使用Nodemon,但是我更愿意使用它。
在没有node %NAME
的情况下,循环运行良好-因此,我猜测可能是因为一旦尝试启动Node.JS,它就不会继续运行,或者我运行的Bash节点出错,但是我看了另一个问题,看来我做对了。
任何帮助将不胜感激。谢谢
代码:
#!/bin/bash
NAME="Run.js"
RUN=`pgrep -f $NAME`
while true
do
if [ "$RUN" == "" ]; then
echo "Script is not running"
node $NAME
else
echo "Script is running"
fi
sleep 5
done
答案 0 :(得分:1)
针对研究案例 避免节点阻止脚本 您需要做的就是添加&
new FormControl()
话虽这么说,还有更好的选择来保持
脚本正在运行,我建议您作为 node $NAME &