BBS水木清华站∶精华区
发信人: reden (鱼~用眼泪绣花), 信区: Linux
标 题: ◇ [简介] screen
发信站: BBS 水木清华站 (Tue Jul 14 13:50:25 1998)
发信人: calvin (冷眼人生~淡出江湖), 信区: FreeBSD
标 题: ◇ [简介] screen
发信站: 华南网木棉站 (Mon Jun 15 15:34:29 1998), 转信
◇ [简介] screen
--------------------------------------------------------------------------------作者: woju (Sound) 看板: 386BSD
标题: [Introduce] screen
时间: Tue May 13 08:01:29 1997
<< screen 简介 >>
前言
screen 已成为不少 unix 玩家必用的工具,screen 的种种「特异功能」
让 UNIX 的使用更加便利。除了 scroll/copy/paste/switching... 外,
screen 的 ditatch/re-attach 更是让前景程式享有背景执行的效果。
安装
ftp://freebsd.csie.nctu.edu.tw/pub/packages-2.2/All/screen-3.7.2.tgz
用 pkg_add 装
ftp://freebsd.ee.ntu.edu.tw/freebsd/woju/etc/screenrc
放到 /usr/local/etc
(假设使用 bash)
ftp://freebsd.ee.ntu.edu.tw/freebsd/woju/misc/
dot.bashrc dot.profile dot.inputrc
放到 $HOME/ .bashrc .profile .inputrc
使用
打 screen 就进入一个 screen session □,在 screen session 下,
所有命令都以 C-a(^A) 开头:
C-a c -> Create,开出新的 window
C-a n -> Next,切换到下个 window
C-a p -> Previous,前一个 window
C-a C-a -> Other,在两个 window 间切换
C-a w -> Windows,列出已开启的 windows 有那些
C-a 0 -> 切换到第 0 个 window
C-a 1..9 -> 切换到第 1..9 个 window
C-a a -> 送出 C-a,在 emacs, ve, bash, tcsh 下可移到行首
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 选定的内容贴上
C-a ? -> Help,显示简单说明
C-a d -> detach,将目前的 screen session (可能含有多个 windows)
丢到背景执行,这招就是 screen 的「特异功能」
当按了 C-a d 把 screen session detach 掉後,会回到还没进 screen 时
的状态,此时在 screen session □每个 window 内跑的 process (无论是
前景/背景)都在继续执行,即使 logout 也不影响。
下次 login 进来时:
screen -ls -> 显示所有的 screen sessions
screen -r [keyword] -> 挑个 screen session 回来 (捡回来)
若 screen -ls □有 Attached sessions:
screen -d [keyword] -> 强制 detach,以便「接手」过来
screen 的 detach 这项「特异功能」除了适合跑「背景性质」的前景程式,
另一种常见的用法是:
用 dos ncsa (或其它极不稳定的 client,或网路状况极差)连上稳定的
screen server,执行 screen 後就可享有 server 的稳定性,比如说,
用 modem 连上某 FreeBSD account,再连到 bbs talk/post,当玩得正
起兴时自己的电脑突然当机(或电话突然断线),赶快再次连上 FreeBSD:
screen -ls -> 看看有那些 screen sessions
screen -d -> 意外断线的 screen 通常仍在 Attached 状态,
所以用 screen -d 强制 detach
screen -r -> 把刚断线的状况「捡回来」,继续 talk,对方
根本不知自己断线再重连 :)
更多的参考资料
C-a ?
man screen
/usr/ports/misc/screen
With regards,
--------------------------------------------------------------------------------吴 庆 鸿,woju@freebsd.ee.ntu.edu.tw | 台大电机,http://freebsd.ee.ntu.edu.tw
--
石头月儿偶遇
花落春风拂肤
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 159.226.21.168]
BBS水木清华站∶精华区