原文地址:我的博客
一、nohup
1、语法
nohup Command [ Arg ... ] [ & ]
#nohup+命令+[Arg参数]+[是否后台运行]
example:
运行命令:nohup /root/anaconda3/envs/py3-flask/bin/python -u main.py &
(使用anaconda虚拟环境py3-flask中的python在后台运行 main.py 文件)
注意:如果不将 nohup 命令的输出重定向,输出将附加到当前目录的 nohup.out 文件中
2、查看日志文件
#在nohup.out文件保存目录下运行
tail -200f nohup.out
3、停止运行
-
列出所有名为main.py的文件运行进程
ps -ef | grep main.py
-
结束进程
kill 8560(对应进程号)
4、nohup和&的区别
- &:指在后台运行,若只使用&,关闭终端,对应的任务也会停止。
- nohup:不挂断的运行,并没有后台运行的功能,即若只使用nohup,终端不再能够接收任何标准输入。
二、screen
1、终端下常用命令
命令 | 作用 |
---|---|
screen -v | 显示版本信息 |
screen -S name | 新建名叫name的会话 |
screen -ls | 列出所有的会话 |
screen -r name | 回到名为name的会话 |
screen -d name | detach掉某个会话 |
screen -d -r name | 结束当前会话并回到name会话 |
2、screen会话下常用命令
所有命令都需要先按ctrl+a
命令 | 作用 |
---|---|
ctrl+a ? | 显示所有可用的命令 |
ctrl+a c | 创建一个新的运行shell窗口,并切换到该窗口 |
ctrl+a w | 显示所有窗口列表 |
ctrl+a p | 切换到上一个窗口 |
ctrl+a n | 切换到下一个窗口 |
ctrl+a 数字键 | 切换到指定窗口 |
ctrl+a d | 暂时断开会话(使用该命令将程序后台运行,关掉终端程序不会停止) |
ctrl+a k | 销毁当前会话 |
ctrl+a [ | 进入回滚模式(看历史记录) |
三、tmux
1、终端下常用命令
命令 | 作用 |
---|---|
tmux new -s name | 新建名为name的会话 |
tmux ls | 列出所有会话列表 |
tmux a -t name | 从终端进入名为name的会话 |
tmux kill-session -t name | 销毁名为name的会话 |
tmux rename -t old_name new_name | 重命名会话 |
2、tmux会话下常用命令
所有命令都需要先按ctrl+b,激活控制台
命令 | 作用 |
---|---|
ctrl+b ? | 显示所有可用的命令,按q返回 |
ctrl+b c | 创建新的窗口,并切换到该窗口 |
ctrl+b w | 显示所有窗口列表 |
ctrl+b p | 切换到上一个窗口 |
ctrl+b n | 切换到下一个窗口 |
ctrl+b , | 重命名当前窗口 |
ctrl+b & | 关闭当前窗口 |
ctrl+b 数字键 | 切换到指定窗口 |
ctrl+b d | 暂时断开会话(使用该命令将程序后台运行,关掉终端程序不会停止) |
ctrl+b ~ | 列出提示信息缓存;其中包含了之前tmux返回的各种提示信息 |
ctrl+b : | 进入命令行模式;此时可以输入支持的命令,例如kill-server可以关闭服务器 |
3、tmux窗格
tmux的一个窗口可以被分成多个pane(窗格),可以做出分屏效果。
命令 | 作用 |
---|---|
ctrl+b % | 将当前面板平分为左右两块 |
ctrl+b “ | 将当前面板平分为上下两块 |
ctrl+b o | 切换到下一个窗格 |
ctrl+b up / down / left / right | 切换窗格 |
ctrl+b space | 对当前窗口下的所有pane重新排列布局,每按一次,换一种样式 |
ctrl+b z | 最大化当前pane,再按一次后恢复 |
ctrl+b x | 关闭当前使用中的pane,操作之后会给出是否关闭的提示,按y确认即关闭 |
4、tmux会话下查看历史输出
按 ctrl-b ,就会进入copy mode,然后用PgUp/PgDn来浏览历史输出,按q退出。
网友评论