一个shell脚本实现应用启动|停止|重启|查看状态
一 问题
自己开发的程序,如何用shell 脚本实现 启动,关闭,重启,查看状态?
二 方案
#!/bin/sh SERVICE="fm_tuoguan_shell" PROCESS_STATUS="fm" CMD="/developer/robot -s rpcs@node.abc.com:9902/1234567 -p admin@cn888" start(){ echo "starting..." nohup $CMD > $SERVICE.log 2>&1 & if [ $? -ne 0 ] then echo "start failed, please check the log!" exit $? else echo $! > $SERVICE.pid echo "start success" fi } stop(){ echo "stopping..." kill -9 `cat $SERVICE.pid` if [ $? -ne 0 ] then echo "stop failed, may be $SERVICE isn't running" exit $? else rm -rf $SERVICE.pid echo "stop success" fi } restart(){ stop&&start } status(){ num=`ps -ef | grep $PROCESS_STATUS | grep -v grep | wc -l` if [ $num -eq 0 ] then echo "$SERVICE isn't running" else echo "$SERVICE is running" fi } case $1 in start) start ;; stop) stop ;; restart) restart ;; status) status ;; *) echo "Usage: $0 {start|stop|restart|status}" ;; esac exit 0
设置可执行权限:
chmod +x myshell.sh
执行:
> sh myshell.sh start # 相对路径 starting... start success > sh /work/shelltask/myshell.sh start #绝对路径
当然也可用systemd实现:https://www.cnblogs.com/soymilk2019/p/14978460.html
原文:https://segmentfault.com/a/1190000022484370
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
2020-07-06 mysql+ftp+shell脚本自动实现数据库的备份