使程序在Linux下后台运行
#后台执行程序
nohup python dingding_for_safe.py > run.log 2>&1 &
#查看后台程序
ps aux |grep "test.sh" #a:显示所有程序 u:以用户为主的格式来显示 x:显示所有程序,不以终端机来区分
ps -ef |grep "test.sh" #-e显示所有进程。-f全格式。
#关闭后台程序
kill 1001
kill -9 1001 #-9表示强制关闭
1. 在终端输入命令,使程序后台执行:
nohup ./pso > pso.log 2>&1 &
解释:nohup就是不挂起的意思,将pso直接放在后台运行,并把终端输出存放在当前
目录下的pso.log文件中。当客户端关机后重新登陆服务器后,直接查看pso.log文件就可看执行结果(命令:#cat pso.file)。
使程序在Linux下后台运行 (关掉终端继续让程序运行的方法)
2. 关闭当前后台运行的命令
ps命令 功能:查看当前的所有进程
kill命令:结束进程
(1)通过jobs命令查看jobnum,然后执行 kill jobnum
(2)通过ps命令查看进程号PID,然后执行 kill PID
如果是前台进程的话,直接执行 Ctrl+c 就可以终止了
------- 作者:求知之人 来源:CSDN 原文
3. linux后台运行命令nohup和&的区别
1. &的意思是在后台运行, 什么意思呢? 意思是说, 当你在执行 ./a.out & 的时候, 即使你用ctrl C, 那么a.out照样运行(因为对SIGINT信号免疫)。 但是要注意, 如果你直接关掉shell后, 那么, a.out进程同样消失。 可见, &的后台并不硬(因为对SIGHUP信号不免疫)。
2. nohup的意思是忽略SIGHUP信号, 所以当运行nohup ./a.out的时候, 关闭shell, 那么a.out进程还是存在的(对SIGHUP信号免疫)。 但是, 要注意, 如果你直接在shell中用Ctrl C, 那么, a.out进程也是会消失的(因为对SIGINT信号不免疫)
3. 所以, &和nohup没有半毛钱的关系, 要让进程真正不受shell中Ctrl C和shell关闭的影响, 那该怎么办呢? 那就用nohua ./a.out &吧, 两全其美。
来源:https://blog.csdn.net/stpeace/article/details/76389073 https://blog.csdn.net/u011095110/article/details/78666833
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理