标签:交互 执行 进程 target inpu success href code hp-socket
问题
php socket 服务在服务器重启后无法自动启动,需要添加开机启动脚本。有以下问题
方案
## 对于开机延迟启动,可以使用 参考地址 方案
# 用于延时启动3分钟 sleep 180
nohup /path/myscript &
nohup xxx & 参见我的另一随笔
- nohup 表示后台运行
- & 是与nohup一起的,表示不受终端关闭信号影响,保持后台运行。如果没有&,在终端关闭时,当前终端执行的nohup进程也会被stop
## 交互式命令,模拟输入 ctrl-c 结束
首先,我需要模拟一个需要使用 ctrl-c 才能退出的脚本,用于测试是否可以工作
备注:使用 kill pid 可以直接退出 需要 ctrl+c 命令的进程。但查询资料后发现 socket php 脚本支持无交互式命令,或者说可以自动退出。
## 执行顺序逻辑
启动脚本在模块运行成功后会打印 Input "php test_php.php stop" to stop. Start success. 信息。
在开机启动脚本中判断启动脚本是否包含该信息,以便执行不同逻辑
1 #!/bin/bash 2 3 # 保存 脚本运行结果 4 php1_start=$( 5 cd /home/duoxuan/workspace/demo_test && 6 /usr/bin/php test_php.php start -d 7 | grep success |wc -l ) 8 9 # 判断是否含有success输出,即是否运行成功 10 if [ $php1_start -gt 0 ];then 11 echo 第一个运行成功 Start success. 12 fi
第一个运行成功 Start success.
第二个运行成功 Start success.
第三个运行成功 Start success.
将脚本添加到开机启动中
标签:交互 执行 进程 target inpu success href code hp-socket
原文地址:https://www.cnblogs.com/duoxuan/p/9994378.html