Nohup
nohup (no hang up) 用于在系统后台不挂断运行命令,退出终端不会影响程序的运行。
例如某 Python 程序:
nohup python -u main.py >> log.out 2>&1 &
2>&1
是一个重定向操作符,它使错误消息也会被写入 log.out 文件。
Screen 会话简单使用
screen 是一个命令行工具,允许在单个 SSH 会话或终端中创建和使用多个会话。
简单来说,Screen 对我最大的好处是即使关闭了终端,会话或执行的程序依然能够继续。
❝相比于 nohup,screen 的使用更加灵活,用途更广。❞
apt update && apt install screen
# 查看当前所有的 Screen 会话
screen -ls
# 新建一个 Screen 会话
screen -S [name]
# 离开 Screen 会话
# 按 Ctrl + a, 再按 d 分离会话
# 恢复 Screen 会话
screen -r [session ID]
# 删除一个 Screen 会话
screen -X -S [session ID] quit
无 root 权限下安装 screen
目前我有一台服务器,但没有 root 和 sudo 权限。
现需要使用 screen,因此采用编译安装。
具体步骤如下:
wget https://ftp.gnu.org/gnu/screen/screen-4.9.1.tar.gz
tar -xvf screen-4.9.1.tar.gz
cd screen-4.9.1
./configure --prefix=$HOME/myapps
make
make install
# 编辑环境变量
vim ~/.bashrc
# 将以下内容添加到最后一行
export PATH="$HOME/myapps/bin:$PATH"
screen -version
source ~/.bashrc