QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4317|回复: 3

screen 用法

[复制链接]
发表于 2008-1-13 22:27:42 | 显示全部楼层 |阅读模式
screen

Ctrl-a S 新建水平分割窗口
Ctrl-a Tab 切换窗口
Ctrl-a :screen bash 新建 screen 终端,并运行 bash
Ctrl-a :quit 退出 screen,将关闭所有 screen 终端,结束其中所有任务



screen 常用命令,

Ctrl-a c 新建 bash screen 终端
Ctrl-a " 列出
Ctrl-a A 重命名
Ctrl-a n 在当前窗口中切换到下一个 screen 终端
Ctrl-a p 在当前窗口中切换到上一个 screen 终端

Ctrl-a d 断开所有 screen 终端,返回 screen 执行前状态,但 screen 内所有终端的任务都在执行
screen -ls 列出当前用户的所有 screen 实例,包括联接和断开的
screen -R <pid> 重新联接到已断开的 screen 实例,如果有多个已断开的 screen 实例,则用 <pid> 区分

Ctrl-a S 新建水平分割窗口
Ctrl-a Tab 切换窗口
Ctrl-a X 关闭当前窗口
Ctrl-a + 扩大当前窗口,默认增加3行
Ctrl-a - 缩小当前窗口,默认减小3行

Ctrl-a :screen <command> 新建 screen 终端,并运行命令<command>
Ctrl-a :resize <height> 改变当前窗口高度为<height>
Ctrl-a :quit 退出 screen,将关闭所有 screen 终端,结束其中所有任务

Ctrl-a <Esc> 进入选择模式
<PageUp> 或 Ctrl-u 光标上移一页
<PageDown> 或 Ctrl-d 光标下移一页
<Left> 或 h 光标左移一格
<Down> 或 j 光标下移一行
<Up> 或 k 光标上移一行
<Right> 或 l 光标右移一格
<Space> 选择开始,选择结束
<Esc> 退出选择模式

Ctrl-a ] 粘贴选择的内容
 楼主| 发表于 2008-1-13 22:32:10 | 显示全部楼层
SCREEN(1)                                                            SCREEN(1)




NAME       screen - screen manager with VT100/ANSI terminal emulation




SYNOPSIS       screen [ -options ] [ cmd [ args ] ]
       screen -r [[pid.]tty[.host]]
       screen -r sessionowner/[[pid.]tty[.host]]




DESCRIPTION       Screen is a full-screen window manager that multiplexes a physical ter-
       minal between several processes (typically interactive  shells).   Each
       virtual terminal provides the functions of a DEC VT100 terminal and, in
       addition, several control functions from the ISO 6429  (ECMA  48,  ANSI
       X3.64)  and ISO 2022 standards (e.g. insert/delete line and support for
       multiple character sets).  There is a  scrollback  history  buffer  for
       each virtual terminal and a copy-and-paste mechanism that allows moving
       text regions between windows.

       When screen is called, it creates a single window with a  shell  in  it
       (or  the  specified  command) and then gets out of your way so that you
       can use the program as you normally would.  Then, at any time, you  can
       create new (full-screen) windows with other programs in them (including
       more shells), kill existing windows, view a list of windows, turn  out-
       put  logging  on and off, copy-and-paste text between windows, view the
       scrollback history, switch between windows in whatever manner you wish,
       etc.  All  windows  run  their  programs completely independent of each
       other. Programs continue to run when their window is currently not vis-
       ible and even when the whole screen session is detached from the user's
       terminal.  When a program terminates, screen (per  default)  kills  the
       window  that  contained  it.  If this window was in the foreground, the
       display switches to the previous  window;  if  none  are  left,  screen
       exits.

       Everything  you type is sent to the program running in the current win-
       dow.  The only exception to this is the one keystroke that is  used  to
       initiate  a  command  to  the window manager.  By default, each command
       begins with a control-a (abbreviated C-a from now on), and is  followed
       by one other keystroke.  The command character and all the key bindings
       can be fully customized to be anything you like, though they are always
       two characters in length.

       Screen does not understand the prefix "C-" to mean control.  Please use
       the caret notation ("^A" instead of "C-a") as  arguments  to  e.g.  the
       escape  command  or  the -e option.  Screen will also print out control
       characters in caret notation.

       The standard way to create a new window is to type "C-a c".  This  cre-
       ates  a  new window running a shell and switches to that window immedi-
       ately, regardless of the state of the process running  in  the  current
       window.   Similarly,  you can create a new window with a custom command
       in it by first binding the command to a keystroke  (in  your  .screenrc
       file  or  at  the "C-a :" command line) and then using it just like the
       "C-a c" command.  In addition, new windows can be created by running  a
       command like:

              screen emacs prog.c

       from  a shell prompt within a previously created window.  This will not
       run another copy of screen, but will instead supply  the  command  name
       and its arguments to the window manager (specified in the $STY environ-
       ment variable) who will use it to create the  new  window.   The  above
       example would start the emacs editor (editing prog.c) and switch to its
       window.

       If "/etc/utmp" is writable by screen, an  appropriate  record  will  be
       written  to  this  file for each window, and removed when the window is
       terminated.  This is useful for working with "talk",  "script",  "shut-
       down",  "rsend",  "sccs"  and  other similar programs that use the utmp
       file to determine who you are. As long as screen is active on your ter-
       minal,  the  terminal's  own  record is removed from the utmp file. See
       also "C-a L".




GETTING STARTED       Before you begin to use screen you'll need to make sure you  have  cor-
       rectly  selected  your  terminal  type, just as you would for any other
       termcap/terminfo program.  (You can do this by using tset for example.)

       If  you're  impatient  and want to get started without doing a lot more
       reading, you should remember this one command:  "C-a ?".  Typing  these
       two characters will display a list of the available screen commands and
       their bindings. Each keystroke is discussed in the section "DEFAULT KEY
       BINDINGS".  The  manual section "CUSTOMIZATION" deals with the contents
       of your .screenrc.

       If your terminal is a "true" auto-margin terminal (it doesn't allow the
       last position on the screen to be updated without scrolling the screen)
       consider using a version of your terminal's termcap that has  automatic
       margins  turned off. This will ensure an accurate and optimal update of
       the screen in all circumstances. Most terminals nowadays  have  "magic"
       margins  (automatic margins plus usable last column). This is the VT100
       style type and perfectly suited for screen.  If all  you've  got  is  a
       "true"  auto-margin  terminal  screen  will  be  content to use it, but
       updating a character put into the last position on the screen  may  not
       be  possible  until the screen scrolls or the character is moved into a
       safe position in some other way. This delay can be shortened by using a
       terminal with insert-character capability.




COMMAND-LINE OPTIONS       Screen has the following command-line options:

       -a   include all capabilities (with some minor exceptions) in each win-
            dow's termcap, even if screen must redraw parts of the display  in
            order to implement a function.

       -A   Adapt  the  sizes of all windows to the size of the current termi-
            nal.  By default, screen tries to restore  its  old  window  sizes
            when  attaching  to  resizable  terminals  (those with "WS" in its
            description, e.g. suncmd or some xterm).

       -c file
            override the default configuration file from "$HOME/.screenrc"  to
            file.

       -d|-D [pid.tty.host]
            does  not  start screen, but detaches the elsewhere running screen
            session. It has the same effect as typing "C-a  d"  from  screen's
            controlling  terminal.  -D  is  the equivalent to the power detach
            key.  If no session can be detached, this option  is  ignored.  In
            combination  with  the  -r/-R  option more powerful effects can be
            achieved:

       -d -r   Reattach a session and if necessary detach it first.

       -d -R   Reattach a session and if necessary detach or  even  create  it
               first.

       -d -RR  Reattach  a  session  and if necessary detach or create it. Use
               the first session if more than one session is available.

       -D -r   Reattach a session. If necessary  detach  and  logout  remotely
               first.

       -D -R   Attach here and now. In detail this means: If a session is run-
               ning, then reattach. If necessary detach  and  logout  remotely
               first.   If  it  was not running create it and notify the user.
               This is the author's favorite.

       -D -RR  Attach here and now. Whatever that means, just do it.

            Note: It is always a good idea to check the status  of  your  ses-
            sions by means of "screen -list".

       -e xy
            specifies the command character to be x and the character generat-
            ing a literal command character to y (when typed after the command
            character).   The default is "C-a" and `a', which can be specified
            as "-e^Aa".  When creating a screen session, this option sets  the
            default  command character. In a multiuser session all users added
            will start off with this command character. But when attaching  to
            an  already  running session, this option changes only the command
            character of the attaching user.  This  option  is  equivalent  to
            either the commands "defescape" or "escape" respectively.

       -f, -fn, and -fa
            turns  flow-control  on, off, or "automatic switching mode".  This
            can also be defined through the "defflow" .screenrc command.

       -h num
            Specifies the history scrollback buffer to be num lines high.

       -i   will cause the interrupt key (usually C-c) to interrupt  the  dis-
            play  immediately  when  flow-control  is  on.   See the "defflow"
            .screenrc command for details.  The use of this option is discour-
            aged.

       -l and -ln
            turns  login  mode  on  or off (for /etc/utmp updating).  This can
            also be defined through the "deflogin" .screenrc command.

       -ls and -list
            does not start screen, but prints a list of  pid.tty.host  strings
            identifying  your screen sessions.  Sessions marked `detached' can
            be resumed with "screen -r". Those marked `attached'  are  running
            and  have a controlling terminal. If the session runs in multiuser
            mode, it is  marked  `multi'.  Sessions  marked  as  `unreachable'
            either  live  on  a  different host or are `dead'.  An unreachable
            session is considered dead, when its name matches either the  name
            of the local host, or the specified parameter, if any.  See the -r
            flag for a description how to construct matches.  Sessions  marked
            as `dead' should be thoroughly checked and removed.  Ask your sys-
            tem administrator if you are not sure. Remove  sessions  with  the
            -wipe option.

       -L   tells  screen to turn on automatic output logging for the windows.

       -m   causes screen  to  ignore  the  $STY  environment  variable.  With
            "screen  -m"  creation  of  a  new session is enforced, regardless
            whether screen is called from within  another  screen  session  or
            not.  This  flag has a special meaning in connection with the `-d'
            option:

       -d -m   Start screen in "detached" mode. This creates a new session but
               doesn't  attach  to  it.  This  is  useful  for  system startup
               scripts.

       -D -m   This also starts screen in "detached" mode, but doesn't fork  a
               new process. The command exits if the session terminates.

       -O   selects  a  more optimal output mode for your terminal rather than
            true VT100 emulation (only affects auto-margin  terminals  without
            `LP').   This can also be set in your .screenrc by specifying `OP'
            in a "termcap" command.

       -p number_or_name
            Preselect a window. This is usefull when you want to reattach to a
            specific  windor or you want to send a command via the "-X" option
            to a specific window. As with screen's select commant, "-" selects
            the  blank  window.  As a special case for reattach, "=" brings up
            the windowlist on the blank window.

       -q   Suppress printing of error messages. In combination with "-ls" the
            exit  value  is  as  follows: 9 indicates a directory without ses-
            sions. 10 indicates a directory with running  but  not  attachable
            sessions.  11 (or more) indicates 1 (or more) usable sessions.  In
            combination with "-r" the exit value is as follows:  10  indicates
            that  there  is  no session to resume. 12 (or more) indicates that
            there are 2 (or more) sessions to resume and  you  should  specify
            which one to choose.  In all other cases "-q" has no effect.

       -r [pid.tty.host]
       -r sessionowner/[pid.tty.host]
            resumes  a detached screen session.  No other options (except com-
            binations with -d/-D) may be specified, though an optional  prefix
            of  [pid.]tty.host  may  be needed to distinguish between multiple
            detached screen sessions.  The second form is used to  connect  to
            another  user's  screen session which runs in multiuser mode. This
            indicates that screen should look for sessions in  another  user's
            directory. This requires setuid-root.

       -R   attempts to resume the first detached screen session it finds.  If
            successful, all other command-line options  are  ignored.   If  no
            detached  session exists, starts a new session using the specified
            options, just as if -R had not been specified. The option  is  set
            by default if screen is run as a login-shell (actually screen uses
            "-xRR" in that case).  For combinations with the -d/-D option  see
            there.

       -s   sets  the  default  shell to the program specified, instead of the
            value in the environment variable  $SHELL  (or  "/bin/sh"  if  not
            defined).   This can also be defined through the "shell" .screenrc
            command.

       -S sessionname
            When creating a new session, this option can be used to specify  a
            meaningful  name for the session. This name identifies the session
            for "screen -list" and "screen -r"  actions.  It  substitutes  the
            default [tty.host] suffix.

       -t name
            sets  the  title  (a.k.a.) for the default shell or specified pro-
            gram.  See also the "shelltitle" .screenrc command.

       -U   Run screen in UTF-8 mode. This option tells screen that your  ter-
            minal sends and understands UTF-8 encoded characters. It also sets
            the default encoding for new windows to `utf8'.

       -v   Print version number.

       -wipe [match]
            does the same as "screen  -ls",  but  removes  destroyed  sessions
            instead of marking them as `dead'.  An unreachable session is con-
            sidered dead, when its name matches either the name of  the  local
            host,  or the explicitly given parameter, if any.  See the -r flag
            for a description how to construct matches.

       -x   Attach to a not detached screen session. (Multi display mode).

       -X   Send the specified command to a running screen  session.  You  can
            use  the  -d or -r option to tell screen to look only for attached
            or detached screen sessions. Note that this command  doesn't  work
            if the session is password protected.




DEFAULT KEY BINDINGS       As  mentioned,  each screen command consists of a "C-a" followed by one
       other character.  For your convenience, all commands that are bound  to
       lower-case  letters  are also bound to their control character counter-
       parts (with the exception of "C-a a"; see below), thus, "C-a c" as well
       as  "C-a  C-c"  can be used to create a window. See section "CUSTOMIZA-
       TION" for a description of the command.


       The following table shows the default key bindings:

       C-a '       (select)      Prompt for a window name or number to  switch
                                 to.

       C-a "       (windowlist -b)
                                 Present  a list of all windows for selection.

       C-a 0       (select 0)
        ...           ...
       C-a 9       (select 9)
       C-a -       (select -)    Switch to window number 0  -  9,  or  to  the
                                 blank window.

       C-a tab     (focus)       Switch the input focus to the next region.

       C-a C-a     (other)       Toggle  to  the  window displayed previously.
                                 Note that this binding defaults to  the  com-
                                 mand  character  typed twice, unless overrid-
                                 den.  For instance, if  you  use  the  option
                                 "-e]x", this command becomes "]]".

       C-a a       (meta)        Send  the  command character (C-a) to window.
                                 See escape command.

       C-a A       (title)       Allow the user to enter a name for  the  cur-
                                 rent window.

       C-a b
       C-a C-b     (break)       Send a break to window.

       C-a B       (pow_break)   Reopen the terminal line and send a break.

       C-a c
       C-a C-c     (screen)      Create  a  new window with a shell and switch
                                 to that window.

       C-a C       (clear)       Clear the screen.

       C-a d
       C-a C-d     (detach)      Detach screen from this terminal.

       C-a D D     (pow_detach)  Detach and logout.

       C-a f
       C-a C-f     (flow)        Toggle flow on, off or auto.

       C-a F       (fit)         Resize the window to the current region size.

       C-a C-g     (vbell)       Toggles screen's visual bell mode.

       C-a h       (hardcopy)    Write a hardcopy of the current window to the
                                 file "hardcopy.n".

       C-a H       (log)         Begins/ends logging of the current window  to
                                 the file "screenlog.n".

       C-a i
       C-a C-i     (info)        Show info about this window.

       C-a k
       C-a C-k     (kill)        Destroy current window.

       C-a l
       C-a C-l     (redisplay)   Fully refresh current window.

       C-a L       (login)       Toggle  this  windows  login  slot. Available
                                 only if screen is configured  to  update  the
                                 utmp database.

       C-a m
       C-a C-m     (lastmsg)     Repeat the last message displayed in the mes-
                                 sage line.

       C-a M       (monitor)     Toggles monitoring of the current window.

       C-a space
       C-a n
       C-a C-n     (next)        Switch to the next window.

       C-a N       (number)      Show the number (and title)  of  the  current
                                 window.

       C-a backspace
       C-a h
       C-a p
       C-a C-p     (prev)        Switch to the previous window (opposite of C-
                                 a n).

       C-a q
       C-a C-q     (xon)         Send a control-q to the current window.

       C-a Q       (only)        Delete all regions but the current one.

       C-a r
       C-a C-r     (wrap)        Toggle the current window's line-wrap setting
                                 (turn  the current window's automatic margins
                                 on and off).

       C-a s
       C-a C-s     (xoff)        Send a control-s to the current window.

       C-a S       (split)       Split the current region into two new ones.

       C-a t
       C-a C-t     (time)        Show system information.

       C-a v       (version)     Display the version and compilation date.

       C-a C-v     (digraph)     Enter digraph.

       C-a w
       C-a C-w     (windows)     Show a list of window.

       C-a W       (width)       Toggle 80/132 columns.

       C-a x
       C-a C-x     (lockscreen)  Lock this terminal.

       C-a X       (remove)      Kill the current region.

       C-a z
       C-a C-z     (suspend)     Suspend screen.   Your  system  must  support
                                 BSD-style job-control.

       C-a Z       (reset)       Reset  the virtual terminal to its "power-on"
                                 values.

       C-a .       (dumptermcap) Write out a ".termcap" file.

       C-a ?       (help)        Show key bindings.

       C-a C-\     (quit)        Kill all windows and terminate screen.

       C-a :       (colon)       Enter command line mode.

       C-a [
       C-a C-[
       C-a esc     (copy)        Enter copy/scrollback mode.

       C-a ]       (paste .)     Write the contents of the paste buffer to the
                                 stdin queue of the current window.

       C-a {
       C-a }       (history)     Copy and paste a previous (command) line.

       C-a >       (writebuf)    Write paste buffer to a file.

       C-a <       (readbuf)     Reads the screen-exchange file into the paste
                                 buffer.

       C-a =       (removebuf)   Removes the file used by C-a < and C-a >.

       C-a ,       (license)     Shows where screen comes from, where it  went
                                 to and why you can use it.

       C-a _       (silence)     Start/stop  monitoring the current window for
                                 inactivity.

       C-a *       (displays)    Show a listing of all currently attached dis-
                                 plays.




CUSTOMIZATION       The  "socket  directory"  defaults either to $HOME/.screen or simply to
       /tmp/screens or preferably to  /usr/local/screens  chosen  at  compile-
       time. If screen is installed setuid-root, then the administrator should
       compile screen with an adequate (not NFS mounted) socket directory.  If
       screen  is  not  running setuid-root, the user can specify any mode 700
       directory in the environment variable $SCREENDIR.

       When screen is invoked, it executes initialization  commands  from  the
       files  "/usr/local/etc/screenrc"  and  ".screenrc"  in  the user's home
       directory. These are the "programmer's defaults" that can be overridden
       in the following ways: for the global screenrc file screen searches for
       the environment variable $SYSSCREENRC (this  override  feature  may  be
       disabled  at compile-time). The user specific screenrc file is searched
       in $SCREENRC, then $HOME/.screenrc.  The command line option  -c  takes
       precedence over the above user screenrc files.

       Commands  in  these  files  are  used to set options, bind functions to
       keys, and to automatically establish one or more windows at the  begin-
       ning  of  your  screen session.  Commands are listed one per line, with
       empty lines being ignored.  A command's arguments are separated by tabs
       or  spaces,  and  may  be surrounded by single or double quotes.  A `#'
       turns the rest of the line into a comment, except in quotes.   Unintel-
       ligible  lines are warned about and ignored.  Commands may contain ref-
       erences to environment variables. The syntax is the shell-like "$VAR  "
       or "${VAR}". Note that this causes incompatibility with previous screen
       versions, as now the '$'-character has to be protected with '\'  if  no
       variable  substitution shall be performed. A string in single-quotes is
       also protected from variable substitution.

       Two configuration files are shipped as examples with your  screen  dis-
       tribution:  "etc/screenrc" and "etc/etcscreenrc". They contain a number
       of useful examples for various commands.

       Customization can also be done 'on-line'. To  enter  the  command  mode
       type  `C-a  :'.  Note  that commands starting with "def" change default
       values, while others change current settings.

       The following commands are available:

       acladd usernames [crypted-pw]
       addacl usernames

       Enable users to fully access this screen session. Usernames can be  one
       user or a comma separated list of users. This command enables to attach
       to the screen session and performs the equivalent of `aclchg  usernames
       +rwx  "#?"'.   executed.  To add a user with restricted access, use the
       `aclchg' command below.  If an optional second parameter  is  supplied,
       it  should  be  a crypted password for the named user(s). `Addacl' is a
       synonym to `acladd'.  Multi user mode only.

       aclchg usernames permbits list
       chacl usernames permbits list

       Change permissions for a comma separated list of users. Permission bits
       are  represented  as `r', `w' and `x'. Prefixing `+' grants the permis-
       sion, `-' removes it. The third parameter is a comma separated list  of
       commands and/or windows (specified either by number or title). The spe-
       cial list `#' refers to all windows, `?' to all commands. if  usernames
       consists  of a single `*', all known users are affected.  A command can
       be executed when the user has the `x' bit for it.  The  user  can  type
       input to a window when he has its `w' bit set and no other user obtains
       a writelock for this window.  Other bits  are  currently  ignored.   To
       withdraw  the writelock from another user in window 2: `aclchg username
       -w+w 2'.  To allow read-only access to the session: `aclchg username -w
       "#"'.  As soon as a user's name is known to screen he can attach to the
       session and (per default) has full permissions for all command and win-
       dows. Execution permission for the acl commands, `at' and others should
       also be removed or the user may be able  to  regain  write  permission.
       Rights  of  the special username nobody cannot be changed (see the "su"
       command).  `Chacl' is a synonym to `aclchg'.  Multi user mode only.

       acldel username

       Remove a user from screen's access control list. If currently attached,
       all the user's displays are detached from the session. He cannot attach
       again.  Multi user mode only.

       aclgrp username [groupname]

       Creates groups of users that share common access rights.  The  name  of
       the group is the username of the group leader. Each member of the group
       inherits the permissions that are granted to  the  group  leader.  That
       means,  if  a user fails an access check, another check is made for the
       group leader.  A user is removed from  all  groups  the  special  value
       "none"  is  used for groupname.  If the second parameter is omitted all
       groups the user is in are listed.

       aclumask [[users]+bits |[users]-bits .... ]
       umask [[users]+bits |[users]-bits .... ]

       This specifies the access other users have to windows that will be cre-
       ated  by  the  caller  of the command.  Users may be no, one or a comma
       separated list of known usernames. If no users are specified, a list of
       all  currently  known  users  is  assumed.   Bits is any combination of
       access control bits allowed defined with the "aclchg" command. The spe-
       cial  username  "?" predefines the access that not yet known users will
       be granted to any window initially.  The special username  "??"  prede-
       fines  the  access that not yet known users are granted to any command.
       Rights of the special username nobody cannot be changed (see  the  "su"
       command).  `Umask' is a synonym to `aclumask'.

       activity message

       When  any  activity  occurs  in a background window that is being moni-
       tored, screen displays a notification in the message line.  The notifi-
       cation  message  can  be re-defined by means of the "activity" command.
       Each occurrence of `%' in message is replaced by the number of the win-
       dow  in  which  activity  has  occurred, and each occurrence of `^G' is
       replaced by the definition for bell in your termcap (usually an audible
       bell).  The default message is

                   'Activity in window %n'

       Note  that  monitoring  is  off  for all windows by default, but can be
       altered by use of the "monitor" command (C-a M).

       allpartial on|off

       If set to on, only the current  cursor  line  is  refreshed  on  window
       change.   This  affects  all  windows  and  is useful for slow terminal
       lines. The previous setting of full/partial refresh for each window  is
       restored with "allpartial off".  This is a global flag that immediately
       takes effect on all windows overriding the "partial" settings. It  does
       not change the default redraw behavior of newly created windows.

       altscreen on|off

       If  set  to on, "alternate screen" support is enabled in virtual termi-
       nals, just like in xterm.  Initial setting is `off'.

       at [identifier][#|*|%] command [args ... ]

       Execute a command at other displays  or  windows  as  if  it  had  been
       entered there.  "At" changes the context (the `current window' or `cur-
       rent display' setting) of the command. If the first parameter describes
       a  non-unique  context, the command will be executed multiple times. If
       the first parameter is of the form  `identifier*'  then  identifier  is
       matched against user names.  The command is executed once for each dis-
       play of the selected user(s). If the first parameter  is  of  the  form
       `identifier%'  identifier  is  matched  against  displays. Displays are
       named after the ttys they attach. The prefix `/dev/' or `/dev/tty'  may
       be  omitted  from  the  identifier.  If identifier has a `#' or nothing
       appended it is matched against window numbers and titles.  Omitting  an
       identifier in front of the `#', `*' or `%'-character selects all users,
       displays or windows because a prefix-match is performed. Note  that  on
       the  affected  display(s)  a short message will describe what happened.
       Permission is checked for initiator of the "at" command,  not  for  the
       owners  of  the affected display(s).  Note that the '#' character works
       as a comment introducer when it is preceded by whitespace. This can  be
       escaped by prefixing a '\'.  Permission is checked for the initiator of
       the "at" command, not for the owners of the affected display(s).
       Caveat: When matching against windows, the command is executed at least
       once  per window. Commands that change the internal arrangement of win-
       dows (like "other") may be called again. In shared windows the  command
       will be repeated for each attached display. Beware, when issuing toggle
       commands like "login"!  Some commands (e.g. "process") require  that  a
       display  is associated with the target windows.  These commands may not
       work correctly under "at" looping over windows.

       attrcolor attrib [attribute/color-modifier]

       This command can be used to highlight attributes by changing the  color
       of  the  text.  If  the  attribute  attrib  is  in  use,  the specified
       attribute/color modifier is also applied. If no modifier is given,  the
       current one is deleted. See the "STRING ESCAPES" chapter for the syntax
       of the modifier. Screen understands two pseudo-attributes,  "i"  stands
       for  high-intensity  foreground  color and "I" for high-intensity back-
       ground color.

       Examples:

              attrcolor b "R"

       Change the color to bright red if bold text is to be printed.

              attrcolor u "-u b"

       Use blue text instead of underline.

              attrcolor b ".I"

       Use bright colors for  bold  text.  Most  terminal  emulators  do  this
       already.

              attrcolor i "+b"

       Make bright colored text also bold.

       autodetach on|off

       Sets  whether screen will automatically detach upon hangup, which saves
       all your running programs until they are resumed with a screen -r  com-
       mand.   When  turned off, a hangup signal will terminate screen and all
       the processes it contains. Autodetach is on by default.

       autonuke on|off

       Sets whether a clear screen sequence should nuke all  the  output  that
       has not been written to the terminal. See also "obuflimit".

       backtick id lifespan autorefresh cmd args...
       backtick id

       Program  the  backtick command with the numerical id id.  The output of
       such a command is used for substitution of the "%`" string escape.  The
       specified  lifespan  is  the number of seconds the output is considered
       valid. After this time, the command is run  again  if  a  corresponding
       string  escape  is  encountered.  The autorefresh parameter triggers an
       automatic refresh for caption and hardstatus strings after  the  speci-
       fied  number  of seconds. Only the last line of output is used for sub-
       stitution.
       If both the lifespan and the autorefresh parameters are zero, the back-
       tick  program is expected to stay in the background and generate output
       once in a while.  In this case, the command is executed right away  and
       screen  stores  the  last  line  of  output. If a new line gets printed
       screen will automatically refresh the hardstatus or the captions.
       The second form of the command deletes the backtick  command  with  the
       numerical id id.

       bce [on|off]

       Change background-color-erase setting. If "bce" is set to on, all char-
       acters cleared by an erase/insert/scroll/clear operation will  be  dis-
       played  in  the  current  background color. Otherwise the default back-
       ground color is used.

       bell_msg [message]

       When a bell character is sent to a background window, screen displays a
       notification  in the message line.  The notification message can be re-
       defined by this command.  Each occurrence of `%' in message is replaced
       by  the  number  of  the window to which a bell has been sent, and each
       occurrence of `^G' is replaced by the definition for bell in your term-
       cap (usually an audible bell).  The default message is

                   'Bell in window %n'

       An  empty message can be supplied to the "bell_msg" command to suppress
       output of a message line (bell_msg "").  Without parameter, the current
       message is shown.

       bind [-c class] key [command [args]]

       Bind  a command to a key.  By default, most of the commands provided by
       screen are bound to one or more keys as indicated in the  "DEFAULT  KEY
       BINDINGS"  section, e.g. the command to create a new window is bound to
       "C-c" and "c".  The "bind" command can be  used  to  redefine  the  key
       bindings and to define new bindings.  The key argument is either a sin-
       gle character, a two-character sequence of the form "^x"  (meaning  "C-
       x"), a backslash followed by an octal number (specifying the ASCII code
       of the character), or a backslash followed by a second character,  such
       as  "\^" or "\\".  The argument can also be quoted, if you like.  If no
       further argument is given, any previously established binding for  this
       key is removed.  The command argument can be any command listed in this
       section.

       If a command class is specified via the "-c" option, the key  is  bound
       for the specified class. Use the "command" command to activate a class.
       Command classes can be used to create multiple command keys  or  multi-
       character bindings.

       Some examples:

                   bind ' ' windows
                   bind ^k
                   bind k
                   bind K kill
                   bind ^f screen telnet foobar
                   bind \033 screen -ln -t root -h 1000 9 su

       would bind the space key to the command that displays a list of windows
       (so that the command usually invoked by "C-a C-w" would also be  avail-
       able  as  "C-a  space").  The  next three lines remove the default kill
       binding from "C-a C-k" and "C-a k".  "C-a K" is then bound to the  kill
       command.  Then  it  binds  "C-f" to the command "create a window with a
       TELNET connection to foobar", and bind "escape"  to  the  command  that
       creates an non-login window with a.k.a. "root" in slot #9, with a supe-
       ruser shell and a scrollback buffer of 1000 lines.

                   bind -c demo1 0 select 10
                   bind -c demo1 1 select 11
                   bind -c demo1 2 select 12
                   bindkey "^B" command -c demo1

       makes "C-b 0" select window 10, "C-b 1" window 11, etc.

                   bind -c demo2 0 select 10
                   bind -c demo2 1 select 11
                   bind -c demo2 2 select 12
                   bind - command -c demo2

       makes "C-a - 0" select window 10, "C-a - 1" window 11, etc.

       bindkey [-d] [-m] [-a] [[-k|-t] string [cmd args]]

       This command manages screen's input translation tables. Every entry  in
       one  of  the  tables tells screen how to react if a certain sequence of
       characters is encountered. There are three tables: one that should con-
       tain  actions  programmed by the user, one for the default actions used
       for terminal emulation and one for screen's  copy  mode  to  do  cursor
       movement.  See  section  "INPUT  TRANSLATION" for a list of default key
       bindings.
       If the -d option is given,  bindkey  modifies  the  default  table,  -m
       changes  the  copy mode table and with neither option the user table is
       selected.  The argument string is the sequence of characters  to  which
       an action is bound. This can either be a fixed string or a termcap key-
       board capability name (selectable with the -k option).
       Some keys on a VT100 terminal can send a different string  if  applica-
       tion  mode  is  turned  on  (e.g  the cursor keys).  Such keys have two
       entries in the translation table. You can select the  application  mode
       entry by specifying the -a option.
       The -t option tells screen not to do inter-character timing. One cannot
       turn off the timing if a termcap capability is used.
       Cmd can be any of screen's commands with an arbitrary number  of  args.
       If cmd is omitted the key-binding is removed from the table.
       Here are some examples of keyboard bindings:

               bindkey -d
       Show  all of the default key bindings. The application mode entries are
       marked with [A].

               bindkey -k k1 select 1
       Make the "F1" key switch to window one.

               bindkey -t foo stuff barfoo
       Make "foo" an abbreviation of the word "barfoo". Timeout is disabled so
       that users can type slowly.

               bindkey "\024" mapdefault
       This  key-binding  makes  "^T" an escape character for key-bindings. If
       you did the above "stuff barfoo" binding, you can enter the word  "foo"
       by  typing  "^Tfoo". If you want to insert a "^T" you have to press the
       key twice (i.e. escape the escape binding).

               bindkey -k F1 command
       Make the F11 (not F1!) key an alternative screen escape (besides ^A).

       break [duration]

       Send a break signal for duration*0.25 seconds to this window.  For non-
       Posix  systems  the  time  interval  may be rounded up to full seconds.
       Most useful if a character device is attached to the window rather than
       a shell process (See also chapter "WINDOW TYPES"). The maximum duration
       of a break signal is limited to 15 seconds.

       blanker

       Activate the screen blanker. First the screen is cleared. If no blanker
       program is defined, the cursor is turned off, otherwise, the program is
       started and it's output is written to the screen.  The  screen  blanker
       is killed with the first keypress, the read key is discarded.
       This command is normally used together with the "idle" command.

       blankerprg [program args]

       Defines a blanker program. Disables the blanker program if no arguments
       are given.

       breaktype [tcsendbreak|TIOCSBRK |TCSBRK]

       Choose one of the available methods of generating a  break  signal  for
       terminal  devices.  This command should affect the current window only.
       But it still behaves identical to "defbreaktype". This will be  changed
       in  the  future.   Calling  "breaktype"  with no parameter displays the
       break method for the current window.

       bufferfile [exchange-file]

       Change the filename used for reading and writing with the paste buffer.
       If  the  optional  argument to the "bufferfile" command is omitted, the
       default setting ("/tmp/screen-exchange") is reactivated.  The following
       example  will  paste  the system's password file into the screen window
       (using the paste buffer, where a copy remains):

                   C-a : bufferfile /etc/passwd
                   C-a < C-a ]
                   C-a : bufferfile

       c1 [on|off]

       Change c1 code processing. "C1 on" tells  screen  to  treat  the  input
       characters  between  128  and  159 as control functions.  Such an 8-bit
       code is normally the same as ESC followed by  the  corresponding  7-bit
       code.  The  default  setting  is to process c1 codes and can be changed
       with the "defc1" command.  Users with fon
回复

使用道具 举报

发表于 2008-1-13 23:09:30 | 显示全部楼层
好长 ^_^
回复

使用道具 举报

 楼主| 发表于 2008-1-14 08:27:58 | 显示全部楼层
screen -R <pid> 重新联接到已断开的 screen 实例,如果有多个已断开的 screen 实例,则用 <pid> 区分  这个好用
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-3-29 10:24 , Processed in 0.079667 second(s), 15 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表