linux 离线运行,linux screen 命令 :离线运行程序

screen工具是linux下虚拟终端的一个常用工具。在 发现这个工具之前,笔者经常在远程ssh中运行需要长时间处理数据的命令,比如远程编译安装软件,如果在编译的过程中网络断开,那这个编译进程就会停止, 造成想不到的后果。自从有了screen命令,我再也不用怕网线不稳和运行需要长时间处理数据的命令。

screen在redhat,centos系统中的安装命令是:yum install screen

screen案例:

新建一个lnmp会话:screen -S lnmp(lnmp为会话名,可自己定义)

离开会话并让程序断续运行:ctrl a d (按住ctrl不放,分别按 a 和 d)

恢复后台运行的会话:screen -r lnmp(lnmp为自己定义的会话名)

显示所有screen创建的会话:screen -ls

在会话里执行exit命令会话是结束运行并退到shell中

参  數:

-A  將所有的視窗都調整为目前終端機的大小。

-d  將指定的screen作業離線。即detached

-h  指定視窗的緩沖區行數。

-m  即使目前已在作業中的screen作業,仍強制建立新的screen作業。

-r  恢复離線的screen作業。

-R  先試圖恢复離線的作業。若找不到離線的作業,即建立新的screen作業。

-s  指定建立新視窗時,所要執行的shell。

-S  指定screen作業的名稱。

-v  顯示版本信息。

-x  恢复之前離線的screen作業。

-ls或–list  顯示目前所有的screen作業。

-wipe  檢查目前所有的screen作業,並刪除已經無法使用的screen作業。

1,开启一个screen并进入:

screen -S test1      #这里用-S表示给screen起名字,以后切换的时候比较方便。这时就进去了screen test1了。里面可以跑一些程序。

2,退出该screen:

Ctrl-a d                  #这里的ctrl-a表示同时按ctrl键和a键,然后再单独按d键。这时退到跟终端。

3,在根下查看开启的所有screen:

screen -ls              # 比如会有25764.test1     (Detached)等。

4,在根下进入某个screen:

screen -r test1        #这时又进入到指定的screen session中,或者screen -r 25764。

5,关闭该session:

exit                     #在该screen中退出,退到根下。

6,强制连接,踢掉原来的

screen -D -r 20791

screen -x -r 20791(共享原来的)

7,当前窗口假死,强制关闭当前窗口,跳到下一个

Ctrl-a  K

8,上翻

Ctrl-a  Ctrl-[

语  法:

screen [-AmRvx -ls -wipe][-d ][-h ][-r ][-s ][-S ]

补充说明:

screen为多重视窗管理程序。此处所谓的视窗,是指一个全屏幕的文字模式画面。通常只有在使用telnet登入主机或是使用老式的终端机时,才有可能用到screen程序。

常用screen参数:

在每个screen session 下,所有命令都以ctrl+a(C-a) 开始。

C-a ? -> Help,显示简单说明

C-a c-> Create,开启新的 window

C-a n-> Next,切换到下个 window

C-a p-> Previous,前一个 window

C-a 0..9-> 切换到第 0..9 个window

Ctrl+a [Space]-> 由視窗0循序換到視窗9

C-a C-a-> 在两个最近使用的 window 间切换

C-a x-> 锁住当前的 window,需用用户密码解锁

C-a d-> detach,暂时离开当前session,将目前的 screen session (可能含有多个 windows) 丢到后台执行,并会回到还没进 screen 时的状态,此时在 screen session 里    每个 window 内运行的 process (无论是前台/后台)都在继续执行,即使 logout 也不影响。

C-a z-> 把当前session放到后台执行,用 shell 的 fg 命令則可回去。

C-a w-> Windows,列出已开启的 windows 有那些

C-a t-> Time,显示当前时间,和系统的 load

C-a K-> kill window,强行关闭当前的 window

C-a [-> 进入 copy mode,在 copy mode 下可以回滚、搜索、复制就像用使用 vi 一样

C-b Backward,PageUp

C-f Forward,PageDown

H(大写) High,将光标移至左上角

L Low,将光标移至左下角

0 移到行首

$ 行末

w forward one word,以字为单位往前移

b backward one word,以字为单位往后移

Space 第一次按为标记区起点,第二次按为终点

Esc 结束 copy mode

C-a ] -> Paste,把刚刚在 copy mode 选定的内容贴上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值