Linux服务器如何后台运行程序及查看进程?
1.后台运行程序(1)&命令功能:加在一个命令的最后,可以让这个命令放在后台执行python test.py &(2)nohup命令功能:加在一个命令的前面,不挂断的运行程序,退出终端不会影响程序的运行nohup python test.py(3)nohup command [Arg ...] [&]功能:后台不挂断地运行程序,并且将输出到终端的内容输出到nohup.out
·
1.后台运行程序
(1)&命令
功能:加在一个命令的最后,可以让这个命令放在后台执行
python test.py &
(2)nohup命令
功能:加在一个命令的前面,不挂断的运行程序,退出终端不会影响程序的运行
nohup python test.py
(3)nohup command [Arg ...] [&]
功能:后台不挂断地运行程序,并且将输出到终端的内容输出到nohup.out
- command:要执行的命令
- Arg:一些参数
- &:让命令在后台执行
nohup python test.py &
2.查看当前后台运行的命令
(1)jobs命令
功能:查看当前终端后台运行的程序
jobs-l 可以显示当前终端所有任务的PID,jobs的状态可以是running,stopped,terminated,+号表示当前任务,-号表示后一个任务
(2)ps命令
功能:查看当前的所有进程
pa-aux a:显示所有程序 u:以用户为主的格式来显示 x:显示所有程序,不以终端机来区分
3.关闭当前后台运行的命令
kill命令:结束进程
(1)通过jobs查看jobnum,然后执行 kill %jobnum
(2)通过ps命令查看进程号PID。然后执行 kill %PID
2022.5.15 学了个新的写法
nohup python -u test.py > test.log 2>&1 &
- nohup: no hang up 指不挂起
- -u: 表示不启用缓存,实时输出打印信息到日志文件
- > test.log: 指将打印信息输出到test.log这个日志文件
- 2>&1: 表示将标准错误输出转变化标准输出,可以将错误信息也输出到日志文件中(0-> stdin, 1->stdout, 2->stderr)
- &: 指后台运行程序
参考博客:Linux下后台运行Python脚本_Loganer的博客-CSDN博客_linux python脚本后台运行
更多推荐
已为社区贡献3条内容
所有评论(0)