SCREEN(1) SCREEN(1)
[ -options ] [ cmd [ args ] ]
screen -r [[pid.]tty[.host]]
screen -r sessionowner/[[pid.]tty[.host]]
screen
()
DEC VT100 ANSI X3.64 (ISO 6429)
ISO 2022 (/)
&
screen
1 ()
() ()
&
screen
screen
()
screen
1
Ctrl-a ( C-a )
1
2
screen
"C-"
("C-a" "^A")
( escape
-e ) screen
"C-a c"
( .screenrc "C-a :" )
"C-a c"
screen emacs prog.c
screen
( $STY )
(prog.c ) emacs
screen
"/etc/utmp"
"talk", "script", "shutdown", "rsend", "sccs" utmp
screen
utmp "C-a L"
termcap/terminfo
screen
(tset )
"C-a ?" 2 screen
()
termcap
"magic" ()
VT100 screen
screen
(insert-character)
-a temcap all
termcap () all
-A screen
( "WS"
suncmd xterm )
-c file
"$HOME/.screenrc" file
-d|-D [pid.tty.host]
screen
screen
screen
"C-a d" -D
-r/-R
-d -r
-d -R
-d -RR
-D -r
-D -R
-D -RR
: "screen -list"
-e xy
x y ()
"C-a" `a'
"-e^Aa" screen
"defescape" "escape"
-f, -fn, -fa
(automatic switching mode)
.screenrc "defflow"
-h num
num
-i ( C-c)
.screenrc "defflow"
-l -ln
(/etc/utmp ) /
.screenrc "deflogin"
-ls -list
screen
screen
pid.tty.host
`detached' "screen -r" `attached'
`multi' `unreachable'
`dead' unreachable
dead
-r `dead'
-wipe
-L screen
-m screen
$STY "screen -m" screen
screen
`-d'
-d -m screen
"detached"
-D -m screen "detached"
-O VT100
(`LP' )
.screenrc "termcap" `OP'
-p ()
"-X"
"-"
"="
-q "-ls" : 9 10 11 () 1 () "-r" : 10 12 ()
2 ()
"-q"
-r [pid.tty.host]
-r sessionowner/[pid.tty.host]
screen
("-d"/"-D" )
screen
[pid.]tty.host
screen
screen
setuid-root
-R screen
-R
screen
( screen "-xRR" ) -d/-D
-s $SHELL ( "/bin/sh")
.screenrc "shell"
-S
"screen -list" "screen -r"
[tty.host]
-t ()
-U UTF-8 screen
UTF-8
screen
`utf8'
-v
-wipe []
"screen -ls"
`dead'
dead
-r
-x screen
()
-X screen -d -r
screen
screen
"C-a" 1
( "C-a a" ) "C-a c" "C-a C-c"
:
C-a ' (select)
C-a " (windowlist -b)
C-a 0 (select 0)
... ...
C-a 9 (select 9)
C-a - (select -) 0 - 9
C-a tab (focus)
C-a C-a (other)
2
"-e]x"
"]C-a" "]]"
C-a a (meta) (C-a)escape
C-a A (title)
C-a b
C-a C-b (break)
C-a B (pow_break)
C-a c
C-a C-c (screen)
C-a C (clear)
C-a d
C-a C-d (detach) screen
C-a D (pow_detach)
C-a f
C-a C-f (flow) on, off, auto
C-a F (fit)
C-a C-g (vbell) screen
C-a h (hardcopy) "hardcopy.n"
C-a H (log) "screenlog.n" /
C-a i
C-a C-i (info)
C-a k
C-a C-k (kill)
C-a l
C-a C-l (redisplay)
C-a L (login)
screen
utmp
C-a m
C-a C-m (lastmsg)
C-a M (monitor)
C-a space
C-a n
C-a C-n (next)
C-a N (number) ()
C-a backspace
C-a h
C-a p
C-a C-p (prev) (C-a n )
C-a q
C-a C-q (xon) Control-q
C-a Q (only)
C-a r
C-a C-r (wrap) (/)
C-a s
C-a C-s (xoff) Control-s
C-a S (split) 2
C-a t
C-a C-t (time)
C-a v (version)
C-a C-v (digraph) (digraph) (: )
C-a w
C-a C-w (windows)
C-a W (width) 80/132
C-a x
C-a C-x (lockscreen)
C-a X (remove)
C-a z
C-a C-z (suspend) screen
BSD
C-a Z (reset) "power-on"
C-a . (dumptermcap) ".termcap"
C-a ? (help)
C-a C-\ (quit) screen
C-a : (colon)
C-a [
C-a C-[
C-a esc (copy) /
C-a ] (paste .)
C-a {
C-a } (history) () &
C-a > (writebuf)
C-a < (readbuf)
C-a = (removebuf) C-a < C-a >
C-a , (license) screen
screen
screen
C-a _ (silence) /
C-a * (displays)
$HOME/.screen
/tmp/screens
/var/run/screen screen
setuid-root
(NFS )
screen
screen
setuid-root
$SCREENDIR
700
screen 2 ("/etc/screenrc"
".screenrc")
:
screenrc screen
$SYSSCREENRC ()
screenrc $SCREENRC, $HOME/.screenrc
-c
screenrc
screen
()
1 1
`#'
`#'
"$VAR " "${VAR}"
screen
'$' '\'
screen 2 "etc/screenrc" "etc/etcscreenrc"
`C-a :' "def"
:
acladd usernames [crypted-pw]
addacl usernames
screen usernames 1
screen
`aclchg usernames +rwx "#?"'
`aclchg' 2
() `addacl' `acladd'
aclchg usernames permbits list
chacl usernames permbits list
(permission) permbits `r', `w', `x' `+' `-' 3 ()
`#' `?' usernames `*' 1
`x'
`w'
2 `aclchg username -w+w 2'
`aclchg username -w "#"'
screen
() acl `at'
nobody
("su" ) `chacl' `aclchg'
acldel username
screen
aclgrp username [groupname]
groupname
"none" 2
aclumask [[users]+bits |[users]-bits .... ]
umask [[users]+bits |[users]-bits .... ]
users
users
bits
"aclchg"
"?"
"??"
nobody
("su" ) `umask' `aclumask'
activity message
screen
"activity" message `%' `~'
termcap ()
'Activity in window %n'
"monitor" (C-a M)
allpartial on|off
on
/ "allpartial off"
"partial"
altscreen on|off
on (alternate screen)
xterm off
at [identifier][#|*|%] command [args ... ]
() "at" ()
`identifier*'
identifier
() 1 `identifier%'
identifier
tty
`/dev/' `/dev/tty' identifier identifier `#' () `*', `%', `#'
()
"at"
'\'
:
1
("other" )
"login" !
("process" ) "at"
attrcolor attrib [attribute/color-modifier]
attrib /
screen 2 : "i" "I"
:
attrcolor b "R"
attrcolor u "-u b"
attrcolor b ".I"
attrcolor i "+b"
autodetach on|off
screen
screen -r
off
screen
screen
autodetach on
autonuke on|off
"obuflimit"
backtick id lifespan autorefresh cmd args...
backtick id
() ID id backtick
"%`"
lifespan
autorefresh
lifespan autorefresh 0
backtick
screen screen
2 ID id backtick
bce [on|off]
(background-color-erase) "bce" on erase/insert/scroll/clear
off
bell_msg [message]
screen
message `%'
`^G' termcap ()
'Bell in window %n'
"bell_msg"
(bell_msg "")
bind [-c class] key [command [args]]
screen
1
"C-c" "c" "bind"
key 1 "^x" ("C-x" ) 2
8 ( ASCII ) 2 ("\^" "\\" )
key
command
"-c"
"command"
:
bind ' ' windows
bind ^k
bind k
bind K kill
bind ^f screen telnet foobar
bind \033 screen -ln -t root -h 1000 9 su
( "C-a C-w" "C-a " )
3 kill "C-a C-k" "C-a k"
"C-a K" kill
foobar TELNET
"C-f"
"root"
9
1000
bind -c demo1 0 select 10
bind -c demo1 1 select 11
bind -c demo1 2 select 12
bindkey "^B" command -c demo1
"C-b 0" 10 "C-b 1" 11
bind -c demo2 0 select 10
bind -c demo2 1 select 11
bind -c demo2 2 select 12
bind - command -c demo2
"C-a - 0" 10 "C-a - 1" 11
bindkey [-d] [-m] [-a] [[-k|-t] string [cmd args]]
screen
1
screen
3
screen
-d
bindkey -m
string
termcap (-k )
VT100
()
2
-a
-t screen termcap
cmd
screen args
cmd
:
bindkey -d
[A]
bindkey -k k1 select 1
"F1" 1
bindkey -t foo stuff barfoo
"foo" "barfoo"
bindkey "\024" mapdefault
"^T"
"stuff barfoo" "^Tfoo" "foo" "^T" 2 ()
bindkey -k F1 command
F11 (F1 !) screen (^A )
break [duration]
duration*0.25
Posix 1
() 15
blanker
"idle"
blankerprg [program args]
breaktype [tcsendbreak|TIOCSBRK |TCSBRK]
"defbreaktype"
"breaktype"
bufferfile [exchange-file]
"bufferfile"
("/tmp/screen-exchange")
screen
():
C-a : bufferfile /etc/passwd
C-a < C-a ]
C-a : bufferfile
c1 [on|off]
c1 "c1 on" screen 128 159
8 ESC 7
c1 "defc1"
c1
off
caption always|splitonly [string]
caption string [string]
always
screen splitonly
"" screen `%3n %t'
charset set
set
4 5-6 0 3 GL/GR
'.' / (set 6 '.' )
"encoding" "BBBB02"
"info"
chdir [directory]
screen
( $HOME ) ".screenrc" "screen" "C-a : screen ..." "C-a c"
chdir screen
.screenrc
chdir
clear
colon [prefix]
".screenrc" screen
"set"
'def...'
screen Ex "C-a esc" () Vi
command [-c class]
screen (^A)
"-c" "bind" "bindkey"
compacthist [on|off]
console [on|off]
:
/dev/console ioctl TIOCCONS
copy
/
vi :
:
h, j, k, l
0, ^, $
H, M, L
+ - 1 1
G ()
|
w, b, e
B E (vi )
C-u C-d
()
C-b C-f 1
g
%
:
.screenrc Emacs (: markkeys "h=^B:l=^F:$=^E")
Emacs
:
2
1 2
Y 1 y
W 1
:
0..9
: "C-a C-[ H 10 j 5 Y" 11 15
:
/ Vi
? Vi
C-a s Emacs C-r Emacs
:
vi
vi
screen
c C
: : "C-a [ M 20 l SPACE c 10 l 5 j C SPACE"
20 5
:
"C-a [ M 20 l SPACE 10 l 5 j SPACE"
J 4
(012)
"crlf on"
v ":set numbers" vi
9 1
a
A (2 )
> (2 )
( /tmp/screen-exchange)
: "C-A [ g SPACE G $ >"
C-g
x
@
copy_reg [key]
"readreg"
crlf [on|off]
`C-a ['
`on' 2 `CR' - `LF' `off' `LF'
debug on|off
/ screen
-DDEBUG
"SCREEN"
defc1 on|off
c1
`on'
defautonuke on|off
autonuke
`off'
`AN'
defbce on|off
bce
`off'
defbreaktype
tcsendbreak TIOCSBRK
TCSBRK
screen
tcsendbreak TIOCSBRK
( 4 )
()
"defbreaktype"
defcharset [set]
charset
defescape xy
"escape"
"escape"
"defescape"
defflow on|off|auto [interrupt]
flow
`auto' "defflow auto interrupt"
-fa -i
defgr on|off
gr
`off'
defhstatus [status]
status
status
'%' '^E' (8 005)
status
defencoding enc
encoding
deflog on|off
log
`off'
deflogin on|off
login
`on' (config.h.in )
defmode mode
tty mode mode 8 "defmode" 0622
defmonitor on|off
monitor
`off'
defnonblock on|off|numsecs
nonblock
`off'
defobuflimit limit
obuflimit
256
'OL'
defscrollback num
scrollback
100
defshell command
shell
defsilence on|off
silence
`off'
defslowpaste msec"
slowpaste
0 `off'
defutf8 on|off
utf8
screen "-U" `on'
`off'
defwrap on|off
wrap
"wrap" ("C-a r") "C-a : wrap on|off"
defwritelock on|off|auto
writelock
defzombie [keys]
zombie
zombie
detach [-h]
screen
()
screen
screen
-r
screen
() -h screen ("hangup")
dinfo
screen
displays
()
digraph [preset]
(digraph sequence)
2
'a"' a
0 () screen
(3 ) 8 () preset
"bindkey ^K digraph '"'" CTRL-K a a
dumptermcap
termcap
"$HOME/.screen" ( screen
)
termcap screen
$TERMCAP terminfo captoinfo
tic
echo [-n] message
echo screen
/etc/screenrc "-n" "sleep" echo
encoding enc [enc]
screen
screen
termcap "KJ"
: eucJP, SJIS, eucKR, eucCN, Big5, GBK, KOI8-R, CP1251, UTF-8,
ISO8859-2, ISO8859-3, ISO8859-4, ISO8859-5, ISO8859-6, ISO8859-7,
ISO8859-8, ISO8859-9, ISO8859-10, ISO8859-15, jis
"defencoding"
escape xy
x ("meta" ) y (-e )
1 "^x" ("C-x" ) 2
8 ( ASCII )
2 ("\^" "\\" )
"^Aa"
eval command1 [command2 ...]
exec [[fdpat] newcommand [args ...]]
newcommand () unix newcommand //
() screen ()
fdpat
3 newcommand
(.) screen
(!)
(:)
newcommand
newcommand
(fdpats `!' `:')
(|) fdpat (4 )
`exec'
`kill'
21 PostScript `doc/fdpat.ps' newcommand 2,1,0 `W' pty
`P' pty
screen
:
`exec' fdpat
fdpat
`|' `!..|'
exec `!'
:
exec ... /bin/sh
exec /bin/sh
!/bin/sh
/bin/sh
exec !.. stty 19200
exec ! stty 19200
!!stty 19200
tty stty `!'
exec !..| less
|less
`|'
tty less
(`|' screen )
177 less
pg
!:sed -n s/.*Error.*/\007/p
sed sed screen
(8 007)
"Error" "Bell in window x"
fit
screen
flow [on|off|auto]
"automatic", "on", "off"
`defflow'
focus [up|down|top|bottom]
`down' `up' `top' `bottom'
(j k vi ):
bind j focus down
bind k focus up
bind t focus top
bind b focus bottom
gr [on|off]
GR / screen 8
GR 8
("defgr" ) GR ( ISO8859-1 )
hardcopy [-h] [file]
Ifile
hardcopy.n
(n )
-h
hardcopy_append on|off
"on" screen
"C-a h" "hardcopy.n"
"off"
`off'
hardcopydir directory
screen
hardstatus [on|off]
hardstatus [always]lastline|message|ignore [string]
hardstatus string [string]
screen
"off"
`on'
( termcap/terminfo "hs", "ts", "fs", "ds" ) screen "lastline" screen
"message" screen "ignore"
"always" ( "alwayslastline") screen
("ESC]0;<string>^G" "ESC_<string>ESC\" )
string
string
height [-w|-d] [lines [cols]]
24 42
-w
-d
help [-c class]
1
"-c"
history
csh "!!" screen
`C-a {' screen
()
hstatus status
status
idle [timeout [cmd args]]
"blanker" screen
timeout 0 ( off)
ignorecase [on|off]
`off'
info
"(,)" ("(1,1)" )
()
"(80,24)+50"
XON/XOFF
()
+flow on
-flow off
+(+)flow
-(+)flow
+(-)flow
-(-)flow
(`+wrap `-wrap' )
`ins', `org', `app', `log', `mon', `nored'
(G0, G1, G2, G3 )
G0 G3 ()
UTF-8 "UTF-8"
()
info
"time"
ins_reg [key]
"paste"
kill
kill
`exec' kill
() HANGUP screen ()
screen kill screen
: Emacs
"C-a" screen
kill "C-a K"
lastmsg
/
()
"msgwait" "msgminwait"
license
screen
() "startup_message"
lockscreen
(/local/bin/lck /usr/bin/lock ) screen
$LOCKPRG ( screen )
UID GID
:
screen
`lockterminal'
log [on|off]
"screenlog.n" /
n `logfile'
`off'
logfile filename
logfile flush secs
"screenlog.%n"
screen
() 10
login [on|off]
utmp
`bind I login on' `bind O login off'
C-a I C-a O screen
root suid (config.h.in ) "on"
"deflogin" screen
utmp
logtstamp [on|off]
logtstamp after [secs]
logtstamp string [string]
screen
"on"
2 screen
2
( `-- %n:%t -- time-stamp -- %M/%d/%y %c:%s --\n')
mapdefault
screen "bindkey"
mapnotnext
mapdefault
maptimeout [timo]
timo
maptimeout "bindkey"
markkeys string
/
string oldchar=newchar
`:' : "B=^B:F=^F" string `C-b' `C-f' vi (/)
`B' `F'
"markkeys h=^B:l=^F:$=^E"
emacs
no-op `@' "markkeys @=L=H" `H' `L'
()
maxwin num
screen
meta
(C-a)
monitor [on|off]
`@'
msgminwait sec
() screen
1
msgwait sec
screen
5
multiuser on|off
screen
`acladd', `aclchg', `acldel'
screen
nethack on|off
screen
"nethack"
screen
NETHACK
$NETHACKOPTIONS
next
nonblock [on|off|numsecs]
()
screen
^S TCP hangup nonblock off () screen nonblock on screen (on 1s )
screen
screen
number [n]
n 2
()
obuflimit [limit]
256 (xterm )
only
kill
other
other next
partial on|off
(redisplay )
allpartial `off'
defpartial
password [crypted_pw]
".screenrc"
screen
screen
UID ()
screen
2
`none'
paste [registers [dest_reg]]
()
'.'
(1 )
copy, history, readbuf
register, readreg, paste
2 paste
2 '.'
"paste" : 2
()
()
1 1
pastefont [on|off]
screen
pow_break
`break'
pow_detach
detach screen
HANGUP : screen
pow_detach_msg [message]
message
prev
printcmd [cmd]
cmd ANSI ESC [ 5 i
screen "po/pf" cmd cmd "lpr" "'cat > /tmp/scrprint'"
printcmd ANSI ESC \
: !
process [key]
screen
1
quit
kill screen VT100 C-4 C-\ :
4 C-a C-4
bind ("bind '^\'" )
readbuf [-e encoding] [filename]
-e screen
"bufferfile"
readreg [-e encoding] [register [filename]]
2 :
0 1
2 (readbuf )
-e screen
screen
( p ):
C-a : readreg p /etc/passwd
C-a : paste p
redisplay
register [-e encoding] key string
string key
-e screen "paste"
remove
kill no-op
removebuf
"writebuf" "readbuf" (unlink)
reset
""
()
resize
()
resize +N N
resize -N N
resize N N
resize =
resize max
resize min
screen [-opts] [n] [cmd [args]]
(-f, -fn,-fa)
() (-t)
(-l, -ln)
(-T <term>)
(-a) (-h <num>)
-M on -L on 0 9 n ()
n () "screen"
()
".screenrc" screen
( 1 )
foobar telnet ( "foobar", 2)
telnet ("screenlog.2")
# example for .screenrc:
screen 1
screen -fn -t foobar -L 2 telnet foobar
screen "screen" ".screenrc"
screen
.screenrc
0
screen "cu" "telnet"
scrollback num
num 100 "defscrollback"
"C-a i (info)"
select [WindowID]
WindowID
()
"select 0"
MAXWIN
WindowID "-" "."
screen "-X"
sessionname [name]
"screen -list" ID
"name" : $STY
tty
setenv [var [string]]
var string var
fork
setsid [on|off]
screen setsid off
screen
on
shell command
$SHELL $SHELL tty
'-'
shelltitle title
C-A C-c
()
silence [on|off|sec]
(silence monitoring) silence on
()
`silencewait'
`on' `off'
silence off
silencewait sec
30
sleep num
sleep "echo"
slowpaste msec
paste ("C-a ]") slowpaste 0 1 screen
1 msec
slowpaste
source file
file source
10
screen source screen
source
temcap/terminfo/termcapinfo
screenrc
sorendition [attr [color]]
screen
attr
"=s dd" ()
split
2
"remove" "only"
startup_message on|off
`on'
stuff string
string
"paste"
"stuff"
"bindkey"
su [username [password [password2]]
"acladd" "password" screen
"su" screen
nobody
( "detach", "license", "version", "help", "displays")
suspend
screen
screen
term term
screen
$TERM "screen"
termcap terminfo "screen" $TERM () "vt100" screen
VT100/ANSI
"term" "screen rlogin othermachine"
$TERM (vt100 )
"screen -T vt100 rlogin othermachine"
termcap term terminal-tweaks [window-tweaks]
terminfo term terminal-tweaks [window-tweaks]
termcapinfo term terminal-tweaks [window-tweaks]
termcap
termcap
termcap
screenrc
termcap terminfo screen
`terminfo' ( `termcap' ) 2
(`%' )
`terminfo'
termcap
terminfo termcap `termcapinfo' `termcap'
`terminfo'
`|'
`*' "vt"
`vt*'
tweak termcap 1 termcap (`:' )
tweak termcap
( '') 2 () tweak
termcap screen
()
:
termcap xterm* LP:hs@
`xterm'
(LP) ('hs' - `@' ) screen
"vt" `LP'
termcap
termcap vt* LP
termcap vt102|vt220 Z0=\E[?3h:Z1=\E[?3l
`vt'
`LP'
VT102 VT220 132 / (Z0) (Z1)
( termcap Z0 Z1 )
termcap vt100 "" l0=PF1:l1=PF2:l2=PF3:l3=PF4
VT100 termcap
termcap
termcap h19|z19 am@:im=\E@:ei=\EO dc=\E[P
h19 z19 termcap (am@) (im) (ei) (`im' `@' `=' ) `im' `ei' termcap
screen
termcap
termcap (dc) screen
()
termcap
screen
$SCREENCAP termcap
termcap(5)
time [string]
1, 5, 15 ()
"info"
string "" screen "%c:%s %M %d %H%? %l%?"
title [windowtitle]
windowtitle
screen
`aka'
unsetenv var
utf8 [on|off [on|off]]
utf8 on UTF-8 ()
( screen "-U" ) "defutf8"
vbell [on|off]
(visual bell)
on
(^G) `vbell-message'
termcap `vb' (terminfo 'flash')
vbell off
(audible bell) `bell_msg'
vbell_msg [message]
(^G)
vbell "on"
message
`"Wuff, Wuff!!"'
vbellwait sec
screen
1
verbose [on|off]
verbose on ()
version
wall message
width [-w|-d] [cols [lines]]
80 132
num termcap "Z0", "Z1"
"termcap"
-w
-d
windowlist [-b] [-m]
windowlist string [string]
windowlist title [title]
("copy" )
-b screen
-m
screen
string title title
string title "Num Name%=Flags"
"%3n %t%=%f"
()
windows
()
`*'
`-'
`$'
`!'
`@'
`(L)'
`&'
`Z'
wrap [on|off]
(^H)
`on'
writebuf [-e encoding] [filename]
screen
encoding
"bufferfile"
/tmp/screen-exchange
writelock [on|off|auto]
`auto'
()
"writelock off"
"writelock on"
xoff
xon
CTRL-s / CTRL-q
zmodem [off|auto|catch|pass]
zmodem sendcmd [string]
zmodem recvcmd [string]
screen zmodem screen zmodem 2 "pass" "catch" "pass" screen
"catch" screen zmodem
rz/sz "auto" screen tty () "catch" "pass"
zombie [keys]
defzombie [keys]
screen
() 2 zombie
kill
1 2 screen
zombie zombie
zombie
defzombie
zombie defzombie
screen
termcap screen
1
()
ANSI (Privacy message)
:
echo '<esc>^Hello world from window '$WINDOW'<esc>\\'
'<esc>' escape'^'
'\\' 1
screen
3 screen
screen
()
screen
screen
100
+o ()
(: slogin )
+o tty () ( "/dev/ttya")
"screen cu -l /dev/ttya"
busy
stty(1) :
<baud_rate>
300, 1200, 9600, 19200
cs8 cs7
1 8 ( 7 )
ixon -ixon
(CTRL-S/CTRL-Q)
()
ixoff -ixoff
()
istrip -istrip
8 ()
tty info
`RTS', `CTS', `DTR', `DSR', `CD'
ioctl()
low (inactive) (!)
high (active) ioctl()
low
CLOCAL ({ }) CRTSCTS `CTS' TIOCSOFTCAR `CD'
tty break
(TxD) low
break
+o "/telnet"
() TCP ( 10 23) screen
telnet
telnet info
([ ])
b BINARY
e ECHO
c SGA ()
t TTYPE screen
"screen" (`term' )
w NAWS
f LFLOW ()
x (XDISPLOC), t (TSPEED), n (NEWENV)
telnet break
telnet IAC BREAK (10 243)
screen
BUILTIN_TELNET
'%'
'^%' ('^E')
:
%
a 'am' 'pm'
A 'AM' 'PM'
c HH:MM (24h )
C HH:MM (12h )
d
D
f
F %?
h
H
l (load)
m ()
M ()
n
s
t
u
w '-'
'+'
W
y ()
Y ()
? '%?'
'%'
:
= (TeX hfill )
'0' screen
'+'
'-'
'L'
<
> screen
()
'L' screen '...'
{ "}" /
` ()
'c' 'C' '0'
screen
'0' '=' ( '%3n') 'D' 'M' 'L'
/
"[] []+U
:
+
-
!
=
16 :
d (dim)
u
b
r
s (standout)
B
16 2 () :
k
r
g
y
b
m
c
w
d
.
'i'
"." 2
"."
"%{-}" ( 1 pop )
"G"
"+b r"
"= yd"
%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<
"hardstatus alwayslastline"
%?%F%{.R.}%?%3n %t%? [%h]%?
()
"caption string"
screen
XON XOFF ()
screen
XON XOFF
(emacs ) "" XOFF XON XOFF
XON XOFF
screen
2 ( "C-a q" (xon) "C-a s" (xoff)) xon/xoff C-s C-q
-f
.screenrc "defflow"
"flow" ("C-a f" )
("rlogin" ) TIOCPKT
tty TIOCPKT screen
( C-c) 6-8 "interrupt" screen
(.screenrc "flow" "interrupt"
-i )
screen
"C-a l" "interrupt"
()
"C-a l"
()
("windows" (C-a w) ) title
.screenrc "shelltitle"
"screen" -t
(<esc>kname<esc>\) "title" (C-a A)
"title"
screen
"search|name"
title search name name `:' screen
( "name:cmd")
:
title (<esc>k<esc>\)
search
screen
'!', '%', '^' screen
()
csh
.screenrc :
screen -t top 2 nice top
.screenrc nice "top"
2 ("nice" ) "top"
shelltitle '> |csh'
screen 1
shelltitle
+:
/usr/joe/src/dir> trn
('> ' )
"trn"
"csh"
bind R screen -t '% |root:' su
.screenrc "C-a R" "su"
"root:"
screen :
% !em
emacs file.c
csh "!em"
"emacs"
"root:emacs"
"root:"
bind o title
bind E title ""
bind u title (unknown)
("C-a o" ) 2 (C-a E) 3 "(unknown)" (C-a u)
title
(csh )
8
1 :
set prompt='^[[0000m^[k^[\% '
"<esc>[0000m"
0 8 bash PROMPT_COMMAND :
PROMPT_COMMAND='echo -n -e "\033k\033\134"'
(bash 1.04
"134" `\' )
screen
VT100
VT100
screen
VT100/ANSI
screen
termcap screen
$TERMCAP screen termcap
rlogin
terminfo
screen
:
screen
"screen.<term>"
<term> $TERM
screen
"screen" ( (132 ) "screen-w")
"vt100"
( EOS )
("screen.<dumbterm>" )
screen
termcap/terminfo
rlogin termcap/terminfo
$TERM screen
$TERMCAP terminfo
$WINDOW
screen
`us' `ue' $TERMCAP screen
( screen )
.screenrc "termcap"
$SCREENCAP screen
$TERMCAP
$TERMCAP
"screen" ( "screen-w")
termcap terminfo screen
.screenrc "terminfo"
screen
termcap
`G0' screen
VT100 ISO 2022 :
G0 (SI), G1 (SO),
G2, G3, G2,
G3 ASCII G0 G3 `G0' screen
`S0', `E0', `C0' () `S0' (SI )
`E0' SO `C0'
`acsc' terminfo
`po' `pf' termcap screen
(/)
info
`PRIN'
screen
screen
ANSI (Application Program Command, APC) "ESC_<string>ESC\" xterm
"ESC]0..2;<string>^G"
$TERMCAP `dl' ()
$TERMCAP
$TERMCAP
(alternate screen)
.screenrc altscreen
screen
"(V)" VT100 "(A)" ANSI ISO
ESC E
ESC D
ESC M
ESC H
ESC Z VT100
ESC 7 (V)
ESC 8 (V)
ESC [s (A)
ESC [u (A)
ESC c
ESC g
ESC Pn p (97801)
Pn = 6
7
ESC = (V)
ESC > (V)
ESC # 8 (V) E
ESC \ (A)
ESC ^ (A) ()
ESC ! ()
ESC k
ESC P (A)
ESC _ (A) ()
ESC ] 0 ; string ^G (A) (xterm )
ESC ] 83 ; cmd ^G (A) screen
screen
":window:"
"addacl :window: -rwx #?"
Control-N (A) G1 (SO)
Control-O (A) G0 (SI)
ESC n (A) G2
ESC o (A) G3
ESC N (A) G2
ESC O (A) G3
ESC ( Pcs (A) G0
ESC ) Pcs (A) G1
ESC * Pcs (A) G2
ESC + Pcs (A) G3
ESC [ Pn ; Pn H
ESC [ Pn ; Pn f
ESC [ Pn J
Pn = None 0
1
2
ESC [ Pn K
Pn = None or 0
1
2
ESC [ Pn X
ESC [ Pn A
ESC [ Pn B
ESC [ Pn C
ESC [ Pn D
ESC [ Pn E
ESC [ Pn F
ESC [ Pn G
ESC [ Pn `
ESC [ Pn d
ESC [ Ps ;...; Ps m
Ps = None or 0
1
2 (A)
3 (A) (ANSI )
4
5
7
22 (A)
23 (A) (ANSI: )
24 (A)
25 (A)
27 (A) ()
30 (A)
31 (A)
32 (A)
33 (A)
34 (A)
35 (A)
36 (A)
37 (A)
39 (A)
40 (A)
...
49 (A)
ESC [ Pn g
Pn = None or 0
3
ESC [ Pn ; Pn r (V)
ESC [ Pn I (A)
ESC [ Pn Z (A)
ESC [ Pn L (A)
ESC [ Pn M (A)
ESC [ Pn @ (A)
ESC [ Pn P (A)
ESC [ Pn S
ESC [ Pn T
ESC [ Pn ^
ESC [ Ps ;...; Ps h
ESC [ Ps ;...; Ps l
Ps = 4 (A)
20 (A)
34
?1 (V)
?3 (V) 132
?5 (V)
?6 (V) (origin)
?7 (V) (wrap)
?9 X10
?25 (V)
?47 ( xterm )
?1000 (V) VT200
?1047 ( xterm )
?1049 ( xterm )
ESC [ 5 i (A) (ANSI Media Copy )
ESC [ 4 i (A) (ANSI Media Copy )
ESC [ 8 ; Ph ; Pw t `Ph' `Pw' (SunView )
ESC [ c VT100
ESC [ x
ESC [ > c VT220
ESC [ 6 n
screen
VT100 screen
VT100
( stuff )
termcap
screen
bindkey
(A)
termcap
______________________________________________________
ku stuff \033[A
stuff \033OA (A)
kd stuff \033[B
stuff \033OB (A)
kr stuff \033[C
stuff \033OC (A)
kl stuff \033[D
stuff \033OD (A)
0 k0 stuff \033[10~
1 k1 stuff \033OP
2 k2 stuff \033OQ
3 k3 stuff \033OR
4 k4 stuff \033OS
5 k5 stuff \033[15~
6 k6 stuff \033[17~
7 k7 stuff \033[18~
8 k8 stuff \033[19~
9 k9 stuff \033[20~
10 k; stuff \033[21~
11 F1 stuff \033[22~
12 F2 stuff \033[23~
Home kh stuff \033[1~
End kH stuff \033[4~
Insert kI stuff \033[2~
Delete kD stuff \033[3~
Page up kP stuff \033[5~
Page down kN stuff \033[6~
0 f0 stuff 0
stuff \033Op (A)
1 f1 stuff 1
stuff \033Oq (A)
2 f2 stuff 2
stuff \033Or (A)
3 f3 stuff 3
stuff \033Os (A)
4 f4 stuff 4
stuff \033Ot (A)
5 f5 stuff 5
stuff \033Ou (A)
6 f6 stuff 6
stuff \033Ov (A)
7 f7 stuff 7
stuff \033Ow (A)
8 f8 stuff 8
stuff \033Ox (A)
9 f9 stuff 9
stuff \033Oy (A)
+ f+ stuff +
stuff \033Ok (A)
- f- stuff -
stuff \033Om (A)
* f* stuff *
stuff \033Oj (A)
/ f/ stuff /
stuff \033Oo (A)
= fq stuff =
stuff \033OX (A)
. f. stuff .
stuff \033On (A)
, f, stuff ,
stuff \033Ol (A)
Enter fe stuff \015
stuff \033OM (A)
screen
termcap(5)
(`/etc/termcap' ) termcap screenrc `termcap', `terminfo', `termcap-
info'
terminfo
LP (bool) VT100 (`magic ') screen 'xn'
obsolete
Z0 (str) 132
Z1 (str) 80
WS (str)
SunView(tm) : '\E[8;%d;%dt'
NF (bool)
^S ^Q 'flow off'
'nx'
G0 (bool) ISO 2022
S0 (str) 'G0'
'\E(%.'
E0 (str) 'G0' '\E(B'
C0 (str) '0'
'ac'
CS (str)
CE (str)
AN (bool) autonuke 'autonuke'
OL (num) 'obuflimit'
KJ (str) 'encoding'
AF (str) ANSI '\E[3%dm' (terminfo '\E[3%p1%dm')
AB (str) 'AF'
AX (bool) ANSI / (\E[39m / \E[49m)
XC (str)
XT (bool) xterm (OSC, )
C8 (bool) ( Eterm)
TF (bool) termcap/terminfo ()
screen
()
( ISO8851-latin1)
:
XC=<charset-mapping>{,,<charset-mapping>}
<charset-mapping> := <designator><template>{,<mapping>}
<mapping> := <char-to-be-mapped><template-arg>
<charset-mapping> <designator> ('B': ASCII, 'A': , 'K': )
screen
<mapping> 1
() <template> '%'
<template-arg>
<template-arg>
'\', '%', ','
:
termcap hp700 'XC=B\E(K%\E(B,\304[,\326\\\\,\334]'
ISOlatin1 ( 'B')
HP700 screen '\304' '\E(K[\E(B' ()
* 3 * 1 '\'
:
'%' screen <designator>
'%'
1 :
termcap xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334'
('K') xterm screen 'K' '\E(B'
ASCII
'%' : '['
'\304' '\' '\326' ']' '\334'
COLUMNS (termcap )
HOME .screenrc
LINES (termcap )
LOCKPRG
NETHACKOPTIONS nethack
PATH
SCREENCAP TERMCAP
SCREENDIR
SCREENRC screenrc
SHELL ( "/bin/sh")
STY
SYSSCREENRC screenrc
TERM
TERMCAP
WINDOW ()
.../screen-4.?.??/etc/screenrc
.../screen-4.?.??/etc/etcscreenrc screen
$SYSSCREENRC
/etc/screenrc screen
$SCREENRC
$HOME/.screenrc /etc/screenrc
$SCREENDIR/S-<login>
/var/run/screen/S-<login> ()
/usr/tmp/screens/S-<login>
<socket directory>/.termcap "termcap"
/usr/tmp/screens/screen-exchange /tmp/screen-exchange
screen
hardcopy.[0-9] hardcopy
screenlog.[0-9] log
/usr/lib/terminfo/?/* /etc/termcap
/var/run/utmp
$LOCKPRG
Oliver Laumann
Wayne Davison, Juergen Weigert, Michael Schroeder
Copyright (C) 1993-2003
Juergen Weigert (jnweiger [AT] immd4.de)
Michael Schroeder (mlschroe [AT] immd4.de)
Copyright (C) 1987 Oliver Laumann
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2, or (at your option) any
later version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MER-
CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.
You should have received a copy of the GNU General Public License along
with this program (see the file COPYING); if not, write to the Free
Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA
Rudolf Koenig (rfkoenig [AT] immd4.de),
Toerless Eckert (eckert [AT] immd4.de),
Wayne Davison (davison [AT] borland.com),
Patrick Wolfe (pat [AT] kai.com, kailand!pat),
Bart Schaefer (schaefer [AT] cse.edu),
Nathan Glasser (nathan [AT] brokaw.edu),
Larry W. Virden (lvirden [AT] cas.org),
Howard Chu (hyc [AT] hanauma.gov),
Tim MacKenzie (tym [AT] dibbler.au),
Markku Jarvinen (mta@{cc,cs,ee}.tut.fi),
Marc Boucher (marc [AT] CAM.ORG),
Doug Siebert (dsiebert [AT] isca.edu),
Ken Stillson (stillson [AT] tsfsrv.org),
Ian Frechett (frechett [AT] spot.EDU),
Brian Koehmstedt (bpk [AT] gnu.edu),
Don Smith (djs6015 [AT] ultb.edu),
Frank van der Linden (vdlinden [AT] fwi.nl),
Martin Schweikert (schweik [AT] cpp.de),
David Vrona (dave [AT] sashimi.com),
E. Tye McQueen (tye%spillman.UUCP [AT] uunet.net),
Matthew Green (mrg [AT] eterna.au),
Christopher Williams (cgw [AT] pobox.com),
Matt Mosley (mattm [AT] access.net),
Gregory Neil Shapiro (gshapiro [AT] wpi.EDU),
Johannes Zellner (johannes [AT] zellner.org),
Pablo Averbuj (pablo [AT] averbuj.com).
4.0.2 Wayne Davison
2.3PR7 Oliver Laumann 2.0 2.x Oliver Laumann
screen
gnudist.gnu.org, nic.funet.fi GNU
anonymous ftp screen
ftp.uni-erlangen.de pub/utilities/screen
`private'
screen [AT] uni-erlangen.de
+>o `dm' () `xs' ()`xn' magic-margin
+o screen
2 2
vttest
+o
$TERMCAP
+o terminfo
$TERMCAP
+o screen
+o screen
root setuid
tty "/etc/utmp"
+o screen
SIGKILL kill "/etc/utmp"
("w" "rwho" )
+o tty utmp screen
+o HANGUP
screen
() screen
-D -d
+o
-D -d
+o "breaktype" "defbreaktype"
+o
.screenrc
.screenrc
+o
+o T screen [AT] uni-erlangen.de
4th Berkeley Distribution Aug 2003 SCREEN(1)