前言:
此时各位老铁们对“node 启动命令”大体比较注重,朋友们都需要剖析一些“node 启动命令”的相关知识。那么小编同时在网络上汇集了一些关于“node 启动命令””的相关资讯,希望姐妹们能喜欢,咱们一起来了解一下吧!真后悔没有早点用shell脚本,我才花了2天搞完了shell菜鸟教程,解决了我一个陈年旧病
因为我一直用node-red,但是有时候node-red会莫名其妙的掉线了,发现的时候已经丢失了很多数据了。
1、了解命令 p2 -ef | grep "**" | grep -v grep
这个是根据名称查找进程,并且过滤掉grep自己的进程
2、开始写脚本
#!/bin/bashwhile true :dops -ef | grep "node-red" | grep -v grepif [ "$?" -ne 0 ]then pm2 start ~/Desktop/nodejs/bin/node-red -- -velse echo "common--->"fisleep 10done
while true :
do
语句A
done
这个是一个死循环,会一直执行语句
这里的语句A是什么呢?
执行ps -ef | grep "node-red" | grep -v grep
获取结果"$?" 的长度
-ne是不等于的意思
我们可以做一个测试,
#!/bin/bashps -ef | grep "node-red" | grep -v grepecho "$?"
当node-red正常运行的时候,看看ps -ef | grep "node-red" | grep -v grep返回的是什么?
当node-red异常运行的时候,看看ps -ef | grep "node-red" | grep -v grep返回的是什么?
根据以上的测试,我们发现,当返回的不为0的时候,就说明进程异常;
死循环的话,感觉太耗性能了,也没有必要
可以每次执行结束以后,休眠10s sleep 10
以下脚本如下
#!/bin/bashwhile true :dops -ef | grep "node-red" | grep -v grepecho "$?"if [ "$?" -ne 0 ]then pm2 start ~/Desktop/nodejs/bin/node-red -- -velse echo "common--->"fisleep 10done
测试脚本是否有效
1、node-red的初始状态是关闭
2、启用脚本 ./pm2 start 发现启动了node-red
3、现在查看node-red的启动状态
pm2 list
node-red启动了
因为每次循环间隔10s,若未启用,则启用,若启用了,则打印common--->
我们可以看到下图左边都是common--->
4、我关闭node-red,看看脚本会不会启用node-red
几秒以后启用了,哈哈哈哈哈,完美
标签: #node 启动命令 #node 启动 守护模式 #node守护进程