linux screen 工具使用及开机启动运行程序

简介

screen 用于多重视窗管理程序

当我们使用 ssh 连接 linux 执行命令的时候会占用当前控制台,虽然可以用nohup的方式扔到后台去执行,但是也觉得不是很方便,screen 就可以帮我们解决这样的苦恼

安装

centos

yum -y install screen

ubuntu

apt install screen

使用

说明

screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s <shell>][-S <作业名称>]

参数

  • -A  将所有的视窗都调整为目前终端机的大小。
  • -d <作业名称>  将指定的 screen 作业离线。
  • -h <行数>  指定视窗的缓冲区行数。
  • -m  即使目前已在作业中的 screen 作业,仍强制建立新的 screen 作业。
  • -r <作业名称>  恢复离线的 screen 作业。
  • -R  先试图恢复离线的作业。若找不到离线的作业,即建立新的 screen 作业。
  • -s <shell>  指定建立新视窗时,所要执行的 shell。
  • -S <作业名称>  指定 screen 作业的名称。
  • -v  显示版本信息。
  • -x  恢复之前离线的 screen 作业。
  • -ls--list  显示目前所有的 screen 作业。
  • -wipe  检查目前所有的 screen 作业,并删除已经无法使用的 screen 作业。

示例

创建一个名为pingscreen终端
screen -S ping
显示已创建的 screen 终端
screen -ls
恢复名为pingscreen终端
screen -r ping

技巧

1、离开screen终端并不中断程序

screen终端下按住ctrl A+D

2、开机启动screen并执行指定shell

centos 系统

编辑/etc/rc.d/rc.local输入要执行的shell即可

vim /etc/rc.d/rc.local

注意 /etc/rc.d/rc.local需要可执行权限
如需要开机运行ping yedajiang44.com

1、在home目录新建start.sh文件并写入

screen_name="ping"
screen -dmS $screen_name
cmd="ping yedajiang44.com";
screen -x -S $screen_name -p 0 -X stuff "$cmd"
screen -x -S $screen_name -p 0 -X stuff $'\n'
screen -x -S $screen_name -p 0 -X stuff "exit"

注意 start.sh需要可执行权限

2、在/etc/rc.d/rc.local输入要执行的shell

/home/start.sh
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值