screen
1、以运行a.python文件为例,创建名称为scr的screen窗口
screen -S scr
2、运行python文件
python a.py
3、丢入后台运行
screen -d
但是一般需要快捷键,因为后台输出着信息呢。
ctrl+a+d就OK了
4、断开ssh
5、连接ssh
6、查看进程是否还在
screen -ls
可以看到正在运行的screen的scr还在
7、清扫screen会话
如果screen -r显示会话已dead,那么直接可以清理掉
screen -wipe
8、杀死screen会话
screen -X -S session_id quit
# eg:screen -X -S 001 quit
nohup
nohup命令进入后台运行
nohup python ym/ais/predict_train.py > output.log 2>&1 &
> output.log
表示程序结果输出到output.log
2>&1
是将标准错误信息转变成标准输出,这样就可以将错误信息输出到output.log 日志里面来。
查看进程信息:
ps -u wjw //该登录用户下运行的进程
ps -aux //所有内存中运行的进程
ps -aux|grep chat.js //所有内存中运行的chat.js的进程
关闭进程信息:
kill -s 9 [PID]
进程的命令
占用cpu前10的进程
ps auxw|head -1;ps auxw|sort -rn -k3|head -10
进程与端口
查看使用某端口的进程
lsof -i:8090
netstat -ap|grep 8090
僵尸进程 [defunct]
简单的理解:父进程已结束,子进程还未结束,相当于已经死掉的进程还在内存中存留着,但事实是已经dead。
kill -s 9 已经不能杀死僵尸了,只有找到父进程,杀死父进程,才能杀死僵尸。
ps -ef | grep defunct_process_pid