- SINTAXIS
- DESCRIPCIÓN
- CÓMO EMPEZAR
- OPCIONES DE LA LÍNEA DE COMANDOS
- COMBINACIONES DE TECLAS PREDETERMINADAS
- PERSONALIZACIÓN
- LA LÍNEA DE MENSAJES
- TIPOS DE VENTANA
- SECUENCIAS DE ESCAPE
- CONTROL DE FLUJO
- TÍTULOS (nombrar ventanas)
- EL TERMINAL VIRTUAL
- TRADUCCIÓN DE ENTRADAS
- CAPACIDADES ESPECIALES DE LA TERMINAL
- TRADUCCIÓN DE CARACTERES
- ENTORNO
- ARCHIVOS
- AUTORES
- COPYLEFT
- COLABORADORES
- DISPONIBILIDAD
- ERRORES
- VER TAMBIÉN
screen - administrador de pantalla con emulación de terminal VT100/ANSI
SINTAXIS
screen [ -opciones ] [ cmd [ args ] ]
screen -r [[pid.]tty[.host]]
screen -r sessionowner/[[pid.]tty[.host]]
DESCRIPCIÓN
Screen es un administrador de ventanas de pantalla completa que multiplexa un terminal físico entre varios procesos (típicamente shells interactivos). Cada terminal virtual proporciona las funciones de un terminal DEC VT100 y, además, varias funciones de control de los estándares ISO 6429 (ECMA 48, ANSI X3.64) e ISO 2022 (por ejemplo, insertar/eliminar línea y soporte para múltiples conjuntos de caracteres). Existe un búfer de historial de desplazamiento para cada terminal virtual y un mecanismo de copiar y pegar que permite mover regiones de texto entre ventanas.
Cuando se llama a screen, crea una sola ventana con un shell en ella (o el comando especificado) y luego se aparta para que pueda usar el programa como lo haría normalmente. Luego, en cualquier momento, puede crear nuevas ventanas de pantalla completa con otros programas en ellas (incluidos más shells), eliminar ventanas existentes, ver una lista de ventanas, activar y desactivar el registro de salida, copiar y pegar texto entre ventanas, ver el historial de desplazamiento, cambiar entre ventanas de la manera que desee, etc. Todas las ventanas ejecutan sus programas de forma completamente independiente entre sí. Los programas continúan ejecutándose incluso cuando su ventana no es visible actualmente e incluso cuando toda la sesión de screen está desconectada del terminal del usuario. Cuando un programa termina, screen (por defecto) elimina la ventana que lo contenía. Si esta ventana estaba en primer plano, la pantalla cambia a la ventana anterior; si no quedan ventanas, screen sale. Los shells generalmente distinguen entre ejecutarse como shell de inicio de sesión o subshell. Screen los ejecuta como subshells, a menos que se indique lo contrario (consulte el comando .screenrc de shell).
Todo lo que escribe se envía al programa que se ejecuta en la ventana actual. La única excepción a esto es la pulsación de tecla que se utiliza para iniciar un comando al administrador de ventanas. Por defecto, cada comando comienza con un control-a (abreviado C-a a partir de ahora) y es seguido por otra tecla. El carácter de comando y todos los enlaces de teclas se pueden personalizar por completo para ser lo que desee, aunque siempre tienen dos caracteres de longitud.
Screen no entiende que C- significa control, aunque esta notación se utiliza en este manual para facilitar la lectura. Utilice la notación de circunflejo (^A en lugar de C-a) como argumentos para, por ejemplo, el comando escape o la opción -e. Screen también imprimirá los caracteres de control en notación de circunflejo.
La forma estándar de crear una nueva ventana es escribir C-a c. Esto crea una nueva ventana que ejecuta un shell y cambia a esa ventana inmediatamente, independientemente del estado del proceso que se está ejecutando en la ventana actual. De manera similar, puede crear una nueva ventana con un comando personalizado ejecutando primero el comando a una pulsación de tecla (en su archivo .screenrc o en la línea de comandos C-a :) y luego usándolo como el comando C-a c. Además, se pueden crear nuevas ventanas ejecutando un comando como:
screen emacs prog.c
desde una línea de comandos dentro de una ventana creada previamente. Esto no ejecutará otra copia de
screen, sino que proporcionará el nombre del comando y sus argumentos al administrador de ventanas (especificado en la variable de entorno $STY), que lo utilizará para crear la nueva ventana. El ejemplo anterior iniciaría el editor emacs (editando prog.c) y cambiaría a su ventana. - Tenga en cuenta que no puede transportar variables de entorno desde el shell que lo invoca a la aplicación (emacs en este caso), porque se bifurca desde el proceso principal de screen, no desde el shell que lo invoca.
Si /run/utmp es de escritura para screen, se escribirá un registro apropiado en este archivo para cada ventana y se eliminará cuando se termine la ventana. Esto es útil para trabajar con talk, script, shutdown, rsend, sccs y otros programas similares que utilizan el archivo utmp para determinar quién es usted. Mientras screen esté activo en su terminal, el registro del terminal se elimina del archivo utmp. Consulte también C-a L.
CÓMO EMPEZAR
Antes de comenzar a usar screen, debe asegurarse de haber seleccionado correctamente el tipo de terminal, como lo haría para cualquier otro programa termcap/terminfo. (Puede hacerlo utilizando test, por ejemplo).
Si tiene prisa y desea comenzar sin leer mucho más, debe recordar este comando: C-a ?. Escribir estos dos caracteres mostrará una lista de los comandos de screen disponibles y sus enlaces. Cada pulsación de tecla se analiza en la sección ENLACES DE TECLAS PREDETERMINADOS. La sección PERSONALIZACIÓN trata sobre el contenido de su archivo .screenrc.
Si su terminal es un terminal de margen automático verdadero (no permite que la última posición en la pantalla se actualice sin desplazar la pantalla), considere usar una versión del termcap de su terminal que tenga los márgenes automáticos desactivados. Esto garantizará una actualización precisa y óptima de la pantalla en todas las circunstancias. La mayoría de los terminales actuales tienen márgenes mágicos (márgenes automáticos más columna usable). Este es el tipo de estilo VT100 y es perfectamente adecuado para screen. Si todo lo que tiene es un terminal de margen automático verdadero, screen se conformará con usarlo, pero la actualización de un carácter colocado en la última posición de la pantalla puede no ser posible hasta que la pantalla se desplace o el carácter se mueva a una posición segura de otra manera. Este retraso se puede acortar utilizando un terminal con capacidad de inserción de caracteres.
OPCIONES DE LA LÍNEA DE COMANDOS
Screen tiene las siguientes opciones de la línea de comandos:
-a incluye todas las capacidades (con algunas excepciones menores) en el termcap de cada ventana, incluso si
screen debe redibujar partes de la pantalla para implementar una función.
-A Adapta el tamaño de todas las ventanas al tamaño del terminal actual. Por defecto, screen
intenta restaurar los tamaños de ventana anteriores al conectarse a terminales redimensionables (aquellos con
WS en su descripción, por ejemplo, suncmd o algunos xterm).
-c archivo
anula el archivo de configuración predeterminado de $HOME/.screenrc con el archivo especificado.
-d|-D [pid.tty.host]
no inicia screen, sino que desconecta la sesión de screen que se está ejecutando en otro lugar. Tiene el mismo
efecto que escribir C-a d desde el terminal de control de screen. -D es equivalente a la tecla de desconexión forzada. Si no se puede desconectar ninguna sesión, esta opción se ignora. En combinación con la
opción -r/-R se pueden lograr efectos más potentes:
-d -r Reconecta a una sesión y, si es necesario, la desconecta primero.
-d -R Reconecta a una sesión y, si es necesario, la desconecta o incluso la crea primero.
-d -RR Reconecta a una sesión y, si es necesario, la desconecta o la crea. Utiliza la primera sesión si hay más de una sesión disponible.
-D -r Reconecta a una sesión. Si es necesario, la desconecta y cierra la sesión de forma remota primero.
-D -R Conecta aquí y ahora. En detalle, esto significa: si se está ejecutando una sesión, se vuelve a conectar. Si es necesario, desconecta y cierra la sesión de forma remota primero. Si no se estaba ejecutando, la crea y notifica al usuario. Esta es la opción favorita del autor.
-D -RR Conecta aquí y ahora. Lo que signifique, simplemente hazlo.
Nota: Siempre es una buena idea verificar el estado de sus sesiones utilizando el comando
screen -list.
-e xy
especifica que el comando se iniciará con el carácter x y el carácter que generará un carácter de comando literal (cuando se escribe después del carácter de comando) será y. El valor predeterminado es C-a y `a', que se puede especificar como -e^Aa. Al crear una sesión de screen, esta opción establece el carácter de comando predeterminado. En una sesión multiusuario, todos los usuarios añadidos comenzarán con este carácter de comando. Pero al conectarse a una sesión que ya se está ejecutando, esta opción cambia solo el carácter de comando del usuario que se está conectando. Esta opción es equivalente a los comandos defescape
o escape respectivamente.
-f, -fn, y -fa
activa, desactiva o cambia al modo de conmutación automática el control de flujo. Esto también se puede definir a través del comando defflow .screenrc.
-h num
Especifica que el búfer de historial de desplazamiento debe tener una altura de num líneas.
-i hará que la tecla de interrupción (normalmente C-c) interrumpa la pantalla inmediatamente cuando el control de flujo esté activado. Consulte el comando defflow .screenrc para obtener más detalles. No se recomienda el uso de esta opción.
-l y -ln
activa o desactiva el modo de inicio de sesión (para la actualización de /run/utmp). Esto también se puede definir a través del comando
deflogin .screenrc.
-ls [match]
-list [match]
no inicia la sesión de screen, pero imprime una lista de cadenas pid.tty.host y marcas de tiempo de creación,
identificando sus sesiones de screen. Las sesiones marcadas como `detached` se pueden reanudar con screen -r.
Las marcadas como `attached` están en ejecución y tienen un terminal de control. Si la sesión se ejecuta en
modo multiusuario, se marca como `multi`. Las sesiones marcadas como `unreachable` se ejecutan en un host diferente o están `dead`. Una sesión inalcanzable se considera `dead` cuando su nombre coincide
con el nombre del host local, o con el parámetro especificado, si lo hay. Consulte la opción -r para
una descripción de cómo construir las coincidencias. Las sesiones marcadas como `dead` deben verificarse a fondo
y eliminarse. Consulte con su administrador del sistema si no está seguro. Elimine las sesiones con la opción -wipe.
-L indica a screen que active el registro automático de la salida para las ventanas.
-Logfile file
De forma predeterminada, el nombre del archivo de registro es screenlog.0. Puede establecer un nuevo nombre de archivo de registro con la opción -Logfile.
-m hace que screen ignore la variable de entorno $STY. Con screen -m, se fuerza la creación de una nueva sesión, independientemente de si screen se llama desde dentro de otra sesión de screen o no. Esta opción tiene un significado especial en relación con la opción `-d`:
-d -m Inicia screen en modo desconectado. Esto crea una nueva sesión, pero no se conecta a ella. Esto es útil para los scripts de inicio del sistema.
-D -m Esto también inicia screen en modo desconectado, pero no bifurca un nuevo proceso. El comando sale si la sesión termina.
-O selecciona un modo de salida óptimo para su terminal en lugar de una emulación VT100 real (solo afecta a los terminales automargen sin `LP`). Esto también se puede establecer en su archivo .screenrc especificando `OP` en un comando termcap.
-p number_or_name|-|=|+
Preselecciona una ventana. Esto es útil cuando desea volver a conectarse a una ventana específica o
desea enviar un comando a través de la opción -X a una ventana específica. Al igual que con el comando select de screen, - selecciona la ventana en blanco. Como caso especial para volver a conectarse, = muestra la lista de ventanas
en la ventana en blanco, mientras que un + creará una nueva ventana. El comando no se ejecutará si
no se encuentra la ventana especificada.
-q Suprime la impresión de mensajes de error. En combinación con -ls, el valor de salida es el siguiente: 9
indica un directorio sin sesiones. 10 indica un directorio con sesiones en ejecución pero no conectables. 11 (o más) indica 1 (o más) sesiones utilizables. En combinación con
-r, el valor de salida es el siguiente: 10 indica que no hay ninguna sesión para reanudar. 12 (o más) indica que hay 2 (o más) sesiones para reanudar y debe especificar
cuál elegir. En todos los demás casos, -q no tiene ningún efecto.
-Q Algunos comandos ahora se pueden consultar desde una sesión remota utilizando esta opción, por ejemplo, screen -Q windows. Los comandos enviarán la respuesta a la salida estándar del proceso de consulta. Si hubo un error en el comando, el proceso de consulta saldrá con un estado distinto de cero.
Los comandos que se pueden consultar ahora son: echo info lastmsg number select time title windows
-r [pid.tty.host]
-r sessionowner/[pid.tty.host]
reanuda una sesión de screen que se ha desconectado. No se pueden especificar otras opciones (excepto combinaciones con -d/-D). Aunque se puede necesitar un prefijo opcional de [pid.]tty.host para distinguir entre múltiples sesiones de screen desconectadas. La segunda forma se utiliza para conectarse a la sesión de screen de otro usuario que se ejecuta en modo multiusuario. Esto indica que screen debe buscar sesiones en el directorio de otro usuario. Esto requiere ser ejecutado como root.
-R reanuda screen solo cuando es inequívoco cuál reanudar, normalmente cuando solo hay una sesión de screen desconectada. De lo contrario, muestra las sesiones disponibles. -RR intenta reanudar la sesión de screen desconectada más reciente (en términos de tiempo de creación). Si tiene éxito, todas las demás opciones de la línea de comandos se ignoran. Si no existe ninguna sesión desconectada, inicia una nueva sesión utilizando las opciones especificadas, como si -R no se hubiera especificado. La opción se establece por defecto si screen se ejecuta como un shell de inicio de sesión (en realidad, screen utiliza -xRR en ese caso). Para combinaciones con la opción -d/-D, consulte la documentación de estas opciones. Nota: la selección de sesión basada en el tiempo es una adición de Debian.
-s program
establece el shell predeterminado al programa especificado, en lugar del valor de la variable de entorno $SHELL (o /bin/sh si no está definida). Esto también se puede definir a través del comando .screenrc del shell. Consulte también la documentación de este comando.
-S sessionname
Cuando se crea una nueva sesión, esta opción se puede utilizar para especificar un nombre significativo para la sesión. Este nombre identifica la sesión para las acciones screen -list y screen -r. Sustituye el sufijo predeterminado [tty.host]. Este nombre no debe tener más de 80 símbolos.
-t name
establece el título (también conocido como "a.k.a.") para el shell predeterminado o el programa especificado. Consulte también el comando shelltitle .screenrc.
-T term
Establece la variable de entorno $TERM utilizando el término especificado en lugar de la configuración predeterminada de screen.
-U Ejecuta screen en modo UTF-8. Esta opción le indica a screen que su terminal envía y comprende caracteres codificados en UTF-8. También establece la codificación predeterminada para las nuevas ventanas en `utf8`.
-v Imprime el número de versión.
-wipe [match]
hace lo mismo que screen -ls, pero elimina las sesiones destruidas en lugar de marcarlas como "muertas". Una sesión inalcanzable se considera muerta cuando su nombre coincide con el nombre del host local o con el parámetro especificado, si lo hay. Consulte la opción -r para obtener una descripción de cómo construir las coincidencias.
-x Se conecta a una sesión de screen que no está desconectada (modo de múltiples pantallas). Screen se niega a conectarse desde dentro de sí mismo. Pero cuando se cascan múltiples pantallas, no se detectan bucles; tenga cuidado.
-X Envía el comando especificado a una sesión de screen en ejecución. Puede utilizar la opción -S para especificar la sesión de screen si tiene varias sesiones de screen en ejecución. Puede utilizar la opción -d o -r para indicarle a screen que solo busque las sesiones de screen adjuntas o desadjuntadas. Tenga en cuenta que este comando no funciona si la sesión está protegida con contraseña.
-4 Resuelve los nombres de host solo a direcciones IPv4.
-6 Resuelve los nombres de host solo a direcciones IPv6.
COMBINACIONES DE TECLAS PREDETERMINADAS
Como se mencionó, cada comando de screen consta de un C-a seguido de otro carácter. Para su comodidad, todos los comandos que están enlazados a letras minúsculas también están enlazados a sus contrapartes de carácter de control (con la excepción de C-a a; consulte abajo), por lo que C-a c, así como C-a C-c, se pueden usar para crear una ventana. Consulte la sección PERSONALIZACIÓN para obtener una descripción del comando.
La siguiente tabla muestra las combinaciones de teclas predeterminadas. Las comas finales en los cuadros con múltiples entradas de pulsación de teclas son separadores, no forman parte de las combinaciones.
C-a ' (select) Solicita un nombre de ventana o número para cambiar.
C-a " (windowlist -b) Presenta una lista de todas las ventanas para su selección.
C-a digit (select 0-9) Cambia a la ventana número 0 - 9.
C-a - (select -) Cambia a la ventana número 0 - 9, o a la ventana en blanco.
C-a tab (focus) Cambia el foco de entrada a la siguiente región. Consulte también split, remove, only.
C-a C-a (other) Alterna a la ventana que se mostró anteriormente. Tenga en cuenta que esta combinación se establece de forma predeterminada en el carácter de comando duplicado, a menos que se redefina. Por ejemplo, si utiliza la opción -e]x, este comando se convierte en ]].
C-a a (meta) Envía el carácter de comando (C-a) a la ventana. Consulte el comando escape.
C-a A (title) Permite al usuario ingresar un nombre para la ventana actual.
C-a b, (break) Envía una interrupción a la ventana.
C-a C-b
C-a B (pow_break) Reabre la línea del terminal y envía una interrupción.
C-a c, (screen) Crea una nueva ventana con un
C-a C-c shell y cambia a esa ventana.
C-a C (clear) Limpia la pantalla.
C-a d, (detach) Desadjunta screen de este
C-a C-d terminal.
C-a D D (pow_detach) Desadjunta y cierra la sesión.
C-a f, (flow) Alterna el flujo entre activado, desactivado o
C-a C-f automático.
C-a F (fit) Cambia el tamaño de la ventana al tamaño de la región actual.
C-a C-g (vbell) Alterna el modo de campana visual de screen.
C-a h (hardcopy) Escribe una copia impresa de la ventana actual en el archivo hardcopy.n.
C-a H (log) Comienza/finaliza el registro de la ventana actual en el archivo screenlog.n.
C-a i, (info) Mostrar información sobre la ventana actual.
C-a C-i
C-a k, (kill) Destruir la ventana actual.
C-a C-k
C-a l, (redisplay) Actualizar completamente la ventana actual.
C-a C-l
C-a L (login) Alternar la sesión de inicio de esta ventana. Disponible solo si la pantalla está configurada para actualizar la base de datos utmp.
C-a m, (lastmsg) Repetir el último mensaje mostrado en la línea de mensajes.
C-a C-m
C-a M (monitor) Alternar el monitoreo de la ventana actual.
C-a espacio, (next) Cambiar a la siguiente ventana.
C-a n,
C-a C-n
C-a N (number) Mostrar el número (y el título) de la ventana actual.
C-a retroceso, (prev) Cambiar a la ventana anterior (opuesto a C-a n).
C-a C-h,
C-a p,
C-a C-p
C-a q, (xon) Enviar un control-q a la ventana actual.
C-a C-q
C-a Q (only) Eliminar todas las regiones excepto la actual. Ver también split, remove, focus.
C-a r, (wrap) Alternar la configuración de ajuste de línea de la ventana actual (activar y desactivar los márgenes automáticos de la ventana actual).
C-a C-r
C-a s, (xoff) Enviar un control-s a la ventana actual.
C-a C-s
C-a S (split) Dividir la región actual horizontalmente en dos nuevas. Ver también only, remove, focus.
C-a t, (time) Mostrar información del sistema.
C-a C-t
C-a v (version) Mostrar la versión y la fecha de compilación.
C-a C-v (digraph) Introducir dígrafo.
C-a w, (windows) Mostrar una lista de ventanas.
C-a C-w
C-a W (width) Alternar entre 80/132 columnas.
C-a x o C-a C-x (lockscreen) Bloquear este terminal.
C-a X (remove) Eliminar la región actual. Ver también split, only, focus.
C-a z, (suspend) Suspender screen. Su sistema debe ser compatible con el control de trabajos estilo BSD.
C-a C-z
C-a Z (reset) Restablecer la terminal virtual a sus valores de inicio.
C-a . (dumptermcap) Escribir un archivo .termcap.
C-a ? (help) Mostrar las combinaciones de teclas.
C-a \ (quit) Eliminar todas las ventanas y finalizar screen.
C-a : (colon) Entrar en el modo de línea de comandos.
C-a [, (copy) Entrar en el modo de copia/desplazamiento.
C-a C-[,
C-a esc
C-a C-], (paste .) Escribir el contenido del búfer de pegado en la cola de entrada estándar de la ventana actual.
C-a ]
C-a {, (history) Copiar y pegar una línea de comando anterior.
C-a }
C-a > (writebuf) Escribe el contenido del búfer de portapapeles en un archivo.
C-a < (readbuf) Lee el archivo de intercambio de pantalla en el búfer de portapapeles.
C-a = (removebuf) Elimina el archivo utilizado por C-a < y C-a \>.
C-a , (license) Muestra de dónde proviene screen, a dónde fue y por qué puedes usarlo.
C-a _ (silence) Inicia/detiene el monitoreo de la ventana actual para detectar inactividad.
C-a | (split -v) Divide la región actual verticalmente en dos nuevas regiones.
C-a * (displays) Muestra una lista de todas las pantallas conectadas actualmente.
PERSONALIZACIÓN
El directorio de sockets por defecto es $HOME/.screen o simplemente /tmp/screens o, preferiblemente, /run/screen, elegido en tiempo de compilación. Si screen está instalado como setuid-root, el administrador debe compilar screen con un directorio de sockets adecuado (que no esté montado en NFS). Si screen no se ejecuta como setuid-root, el usuario puede especificar cualquier directorio con permisos 700 en la variable de entorno $SCREENDIR.
Cuando se invoca screen, ejecuta comandos de inicialización desde los archivos /etc/screenrc y los valores predeterminados que pueden sobrescribirse de las siguientes maneras: para el archivo global screenrc, screen busca la variable de entorno $SYSSCREENRC (esta función de anulación puede desactivarse en tiempo de compilación). El archivo screenrc específico del usuario se busca en $SCREENRC, luego en $HOME/.screenrc. La opción de línea de comandos -c tiene prioridad sobre los archivos screenrc de usuario anteriores.
Los comandos en estos archivos se utilizan para establecer opciones, vincular funciones a teclas y para establecer automáticamente una o más ventanas al comienzo de la sesión de screen. Los comandos se enumeran uno por línea, y las líneas vacías se ignoran. Los argumentos de un comando se separan por tabulaciones o espacios, y pueden estar rodeados de comillas simples o dobles. Un # convierte el resto de la línea en un comentario, excepto dentro de las comillas. Las líneas ininteligibles se advierten e ignoran. Los comandos pueden contener referencias a variables de entorno. La sintaxis es similar a la de shell: "$VAR" o "${VAR}". Tenga en cuenta que esto causa incompatibilidad con las versiones anteriores de screen, ya que ahora el carácter $ debe protegerse con \ si no se debe realizar ninguna sustitución de variables. Una cadena entre comillas simples también está protegida contra la sustitución de variables.
Se envían dos archivos de configuración como ejemplos con su distribución de screen: etc/screenrc y etc/etcscreenrc. Contienen varios ejemplos útiles para varios comandos.
La personalización también se puede realizar "en línea". Para entrar en el modo de comando, escriba C-a :. Tenga en cuenta que los comandos que comienzan con def cambian los valores predeterminados, mientras que otros cambian la configuración actual.
Los siguientes comandos están disponibles:
acladd usernames [crypted-pw]
addacl usernames
Permite a los usuarios acceder completamente a esta sesión de screen. Los nombres de usuario pueden ser un usuario o una lista separada por comas de usuarios. Este comando permite adjuntarse a la sesión de screen y realiza el equivalente de aclchg usernames +rwx "#?". ejecutado. Para agregar un usuario con acceso restringido, use el comando aclchg a continuación. Si se proporciona un segundo parámetro opcional, debe ser una contraseña cifrada para el(los) usuario(s) especificado(s). Addacl es sinónimo de acladd. Solo modo multiusuario.
aclchg usernames permbits list
chacl usernames permbits list
Cambia los permisos para una lista separada por comas de usuarios. Los bits de permiso se representan como r',w' y x'. Prefijar+' otorga el permiso, -' lo elimina. El tercer parámetro es una lista separada por comas de comandos y/o ventanas (especificados ya sea por número o por título). La lista especial#' se refiere a todas las ventanas, ?' a todos los comandos. Si usernames consiste en un único*', se ven afectados todos los usuarios conocidos.
Un comando se puede ejecutar cuando el usuario tiene el bit `x` para él. El usuario puede escribir en
una ventana cuando tiene el bit `w` establecido y ningún otro usuario obtiene un bloqueo de escritura para esta ventana. Los
otros bits se ignoran actualmente. Para retirar el bloqueo de escritura de otro usuario en la ventana 2: `aclchg
username -w+w 2'. Para permitir el acceso de solo lectura a la sesión: `aclchg username -w "#"'. Tan pronto como
el nombre de un usuario es conocido por screen, este puede conectarse a la sesión y (por defecto) tiene permisos completos para todos los comandos y ventanas. El permiso de ejecución para los comandos acl, `at` y otros
también debe eliminarse o el usuario podría ser capaz de recuperar el permiso de escritura. Los derechos del usuario especial nobody no se pueden cambiar (ver el comando su). `Chacl` es un sinónimo de `aclchg`. Solo modo multiusuario.
acldel username
Elimina un usuario de la lista de control de acceso de screen. Si está conectado actualmente, todas las pantallas del usuario se desconectan de la sesión. No puede volver a conectarse. Solo modo multiusuario.
aclgrp username [groupname]
Crea grupos de usuarios que comparten derechos de acceso comunes. El nombre del grupo es el nombre de usuario del líder del grupo. Cada miembro del grupo hereda los permisos que se otorgan al líder del grupo. Eso significa que, si un usuario falla una verificación de acceso, se realiza otra verificación para el líder del grupo. Un usuario se elimina de todos los grupos utilizando el valor especial none para groupname. Si se omite el segundo parámetro, se enumeran todos los grupos en los que se encuentra el usuario.
aclumask [[ users ] +bits | [ users ] -bits... ]
umask [[ users ] +bits | [ users ] -bits... ]
Esto especifica el acceso que otros usuarios tienen a las ventanas que serán creadas por el que llama al
comando. Los usuarios pueden ser no, uno o una lista separada por comas de nombres de usuario conocidos. Si no se especifican usuarios, se asume una lista de todos los usuarios actualmente conocidos. Bits es cualquier combinación de bits de control de acceso permitidos definidos con el comando aclchg. El nombre de usuario especial ? predefine el acceso que los usuarios que aún no se conocen recibirán inicialmente a cualquier ventana. El nombre de usuario especial ??
predefine el acceso que los usuarios que aún no se conocen recibirán a cualquier comando. Los derechos del nombre de usuario especial nobody no se pueden cambiar (ver el comando su). Umask es un sinónimo de aclumask.
actividad mensaje
Cuando ocurre alguna actividad en una ventana en segundo plano que se está monitoreando, la pantalla muestra una notificación en la línea de mensajes. El mensaje de notificación se puede redefinir mediante el comando activity. Cada ocurrencia de %' en el mensaje se reemplaza por el número de la ventana en la que ha ocurrido la actividad, y cada ocurrencia de^G' se reemplaza por la definición de bell en su archivo termcap (generalmente una señal audible). El mensaje predeterminado es:
'Actividad en la ventana %n'
Tenga en cuenta que el monitoreo está desactivado para todas las ventanas por defecto, pero se puede modificar mediante el comando monitor (C-a M).
allpartial [on | off]
Si se establece en on, solo se actualiza la línea del cursor actual cuando se cambia de ventana. Esto afecta a todas las ventanas y es útil para terminales lentos. La configuración anterior de actualización completa/parcial para cada ventana se restaura cuando allpartial se establece en off. Esta es una marca global que se aplica inmediatamente a todas las ventanas, anulando la configuración parcial. No cambia el comportamiento predeterminado de actualización de las ventanas recién creadas.
altscreen [on | off]
Si se establece en on, se habilita el soporte de "pantalla alternativa" en terminales virtuales, tal como en xterm. La configuración inicial es off.
at [identificador][#|*|%] comando [args...]
Ejecuta un comando en otras pantallas o ventanas como si se hubiera ingresado allí. at cambia el contexto (la "ventana actual" o la "pantalla actual") del comando. Si el primer parámetro describe un contexto no único, el comando se ejecutará varias veces. Si el primer parámetro tiene el formato identificador*, entonces identificador se compara con los nombres de usuario. El comando se ejecuta una vez por cada pantalla del usuario(s) seleccionado(s). Si el primer parámetro tiene el formato identificador%, entonces identificador se compara con las pantallas. Las pantallas se nombran según los TTY a los que están adjuntas. El prefijo /dev/ o /dev/tty se puede omitir del identificador. Si identificador tiene un # o nada adjunto, se compara con los números y los títulos de las ventanas. Omitir un identificador delante de los caracteres #, * o % selecciona a todos los usuarios, pantallas o ventanas, ya que se realiza una comparación de prefijos. Tenga en cuenta que en las pantallas afectadas, un mensaje breve describirá lo que sucedió. Se verifica el permiso para el iniciador del comando at, no para los propietarios de las pantallas afectadas. Tenga en cuenta que el carácter # funciona como un introductor de comentarios cuando está precedido por un espacio en blanco. Esto se puede escapar anteponiendo una barra invertida \. Se verifica el permiso para el iniciador del comando at, no para los propietarios de las pantallas afectadas.
Advertencia: Al comparar con ventanas, el comando se ejecuta al menos una vez por ventana. Los comandos que cambian la disposición interna de las ventanas (como `other`) pueden volver a llamarse. En las ventanas compartidas, el comando se repetirá para cada pantalla adjunta. Tenga cuidado al emitir comandos de alternancia como `login!`. Algunos comandos (por ejemplo, `process`) requieren que una pantalla esté asociada con las ventanas de destino. Estos comandos pueden no funcionar correctamente al realizar una iteración sobre ventanas con `at`.
^ ttrcolor attrib [attribute/color-modifier]
Este comando se puede utilizar para resaltar atributos cambiando el color del texto. Si el atributo attrib está en uso, también se aplica el modificador de atributo/color especificado. Si no se proporciona ningún modificador, se elimina el modificador actual. Consulte el capítulo STRING ESCAPES para obtener la sintaxis del modificador. Screen admite dos pseudoatributos: i representa el color de primer plano de alta intensidad e I representa el color de fondo de alta intensidad.
Ejemplos:
^ ttrcolor b "R"
Cambia el color a rojo brillante si se va a imprimir texto en negrita.
^ ttrcolor u "-u b"
Utiliza texto azul en lugar de subrayado.
^ ttrcolor b ".I"
Utiliza colores brillantes para el texto en negrita. La mayoría de los emuladores de terminal ya hacen esto.
^ ttrcolor i "+b"
Hace que el texto de color brillante también esté en negrita.
^ utodetach [on | off]
Establece si screen se desconectará automáticamente al recibir una señal de cierre (hangup), lo que guarda todas las aplicaciones en ejecución hasta que se reanuden con el comando screen -r. Cuando se desactiva, una señal de cierre terminará screen y todos los procesos que contiene. Autodetach está activado de forma predeterminada.
^ utonuke [on | off]
Establece si una secuencia de limpieza de pantalla debe eliminar toda la salida que no se haya escrito en la terminal. Consulte también obuflimit.
^ acktick id lifespan autorefresh cmd args...
^ acktick id
Programa el comando backtick con el ID numérico id. La salida de este comando se utiliza para la sustitución de la secuencia de escape %. El parámetro lifespan especifica el número de segundos durante los cuales la salida se considera válida. Después de este tiempo, el comando se vuelve a ejecutar si se encuentra una secuencia de escape correspondiente. El parámetro autorefresh activa una actualización automática de las cadenas caption y hardstatus después del número de segundos especificado. Solo se utiliza la última línea de la salida para la sustitución.
Si tanto los parámetros lifespan como autorefresh son cero, se espera que el programa backtick permanezca en segundo plano y genere salida de vez en cuando. En este caso, el comando se ejecuta inmediatamente y screen almacena la última línea de salida. Si se imprime una nueva línea, screen actualizará automáticamente el hardstatus o los pies de página.
La segunda forma del comando elimina el comando backtick con el ID numérico id.
^ ce [on | off]
Cambia la configuración background-color-erase. Si bce está configurado en on, todos los caracteres que se borren mediante una operación de borrado/inserción/desplazamiento/limpieza se mostrarán con el color de fondo actual. De lo contrario, se utiliza el color de fondo predeterminado.
^ ell_msg [message]
Cuando se envía un carácter de campana a una ventana en segundo plano, screen muestra una notificación en la línea de mensajes. El mensaje de notificación se puede redefinir con este comando. Cada aparición de %' en el mensaje se reemplaza por el número de la ventana a la que se envió la campana, y cada aparición de^G` se reemplaza por la definición de campana en su archivo termcap (generalmente una campana audible). El mensaje predeterminado es:
'Campana en la ventana %n'
Se puede proporcionar un mensaje vacío al comando bell_msg para suprimir la salida de una línea de mensaje (bell_msg ""). Sin parámetro, se muestra el mensaje actual.
bind [class] key [command [args]]
Asigna un comando a una tecla. De forma predeterminada, la mayoría de los comandos proporcionados por screen están asignados a una o más teclas, como se indica en la sección ASIGNACIONES DE TECLAS PREDETERMINADAS, por ejemplo, el comando para crear una nueva ventana está asignado a C-c y c. El comando bind se puede utilizar para redefinir las asignaciones de teclas y para definir nuevas asignaciones. El argumento key es una sola carácter, una secuencia de dos caracteres de la forma ^x (que significa C-x), una barra invertida seguida de un número octal (que especifica el código ASCII del carácter) o una barra invertida seguida de un segundo carácter, como \^ o \. El argumento también se puede poner entre comillas, si lo desea. Si no se proporciona ningún argumento adicional, se elimina cualquier asignación previamente establecida para esta tecla. El argumento command puede ser cualquier comando que se enumere en esta sección.
Si se especifica una clase de comando mediante la opción -c, la tecla se asigna a la clase especificada. Use el comando command para activar una clase. Las clases de comando se pueden utilizar para crear múltiples teclas de comando o asignaciones de varios caracteres.
Algunos ejemplos:
bind ' ' windows
bind ^k
bind k
bind K kill
bind ^f screen telnet foobar
bind \033 screen -ln -t root -h 1000 9 su
asignaría la tecla de espacio al comando que muestra una lista de ventanas (de modo que el comando que normalmente se invoca mediante C-a C-w también esté disponible como C-a espacio). Las siguientes tres líneas eliminan la asignación de eliminación predeterminada de C-a C-k y C-a k. Luego, C-a K se asigna al comando kill. Luego, asigna C-f al comando para crear una ventana con una conexión TELNET a foobar, y asigna escape al comando que crea una ventana no de inicio de sesión, también conocida como root, en la ranura n.º 9, con un shell de superusuario y un búfer de desplazamiento de 1000 líneas.
bind -c demo1 0 select 10
bind -c demo1 1 select 11
bind -c demo1 2 select 12
bindkey "^B" command -c demo1
hace que C-b 0 seleccione la ventana 10, C-b 1 la ventana 11, etc.
bind -c demo2 0 select 10
bind -c demo2 1 select 11
bind -c demo2 2 select 12
bind - command -c demo2
hace que C-a - 0 seleccione la ventana 10, C-a - 1 la ventana 11, etc.
bindkey [-d] [-m] [-a] [[-k|-t] string [cmd-args]]
Este comando administra las tablas de traducción de entrada de screen. Cada entrada en una de las tablas le dice a screen cómo reaccionar si se encuentra una determinada secuencia de caracteres. Hay tres tablas: una que debe contener acciones programadas por el usuario, una para las acciones predeterminadas utilizadas para la emulación de terminal y una para el modo de copia de screen para realizar el movimiento del cursor. Consulte la sección TRADUCCIÓN DE ENTRADAS para obtener una lista de las asignaciones de teclas predeterminadas.
Si se proporciona la opción -d, bindkey modifica la tabla predeterminada, -m cambia la tabla del modo de copia y, si no se proporciona ninguna de las dos opciones, se selecciona la tabla del usuario. La cadena de argumento es la secuencia de caracteres a la que se vincula una acción. Esto puede ser una cadena fija o un nombre de capacidad de terminal (seleccionable con la opción -k).
Algunas teclas en un terminal VT100 pueden enviar una cadena diferente si el modo de aplicación está activado (por ejemplo, las teclas de cursor). Estas teclas tienen dos entradas en la tabla de traducción. Puede seleccionar la entrada del modo de aplicación especificando la opción -a.
La opción -t le indica a screen que no realice el tiempo entre caracteres. No se puede desactivar el tiempo si se utiliza una capacidad de terminal.
Cmd puede ser cualquiera de los comandos de screen con un número arbitrario de argumentos. Si se omite cmd, la vinculación de teclas se elimina de la tabla.
Aquí hay algunos ejemplos de enlaces de teclado:
bindkey -d
Muestra todos los enlaces de teclado predeterminados. Las entradas del modo de aplicación están marcadas con [A].
bindkey -k k1 select 1
Hace que la tecla "F1" cambie a la ventana uno.
bindkey -t foo stuff barfoo
Hace que "foo" sea un abreviatura de la palabra "barfoo". El tiempo de espera está desactivado para que los usuarios puedan escribir lentamente.
bindkey "\024" mapdefault
Este enlace de teclado hace que ^T sea un carácter de escape para los enlaces de teclado. Si hizo el enlace anterior stuff barfoo, puede ingresar la palabra foo escribiendo ^Tfoo. Si desea insertar un ^T, debe presionar la tecla dos veces (es decir, escapar el enlace de escape).
bindkey -k F1 command
Hace que la tecla F11 (no F1) sea una secuencia de escape de pantalla alternativa (además de ^A).
break [duración]
Envía una señal de interrupción durante duración * 0,25 segundos a esta ventana. Para los sistemas que no son POSIX, el intervalo de tiempo puede redondearse al segundo completo. Es más útil si se adjunta un dispositivo de caracteres a la ventana en lugar de un proceso de shell (consulte también el capítulo TIPOS DE VENTANAS). La duración máxima de una señal de interrupción está limitada a 15 segundos.
blanker
Activa el programa de limpieza de pantalla. Primero, la pantalla se borra. Si no se define ningún programa de limpieza de pantalla, el cursor se apaga; de lo contrario, se inicia el programa y su salida se escribe en la pantalla. El programa de limpieza de pantalla se cierra con la primera pulsación de tecla, y la tecla presionada se descarta.
Este comando normalmente se usa junto con el comando idle.
blankerprg [argumentos-programa]
Define un programa de limpieza de pantalla. Desactiva el programa de limpieza de pantalla si se proporciona un argumento vacío. Muestra el programa de limpieza de pantalla actualmente configurado si no se proporcionan argumentos.
breaktype [tcsendbreak|TIOCSBRK|TCSBRK]
Elija uno de los métodos disponibles para generar una señal de interrupción para dispositivos de terminal. Este comando solo debería afectar a la ventana actual. Pero todavía se comporta de manera idéntica a defbreaktype. Esto cambiará en el futuro. Llamar a breaktype sin ningún parámetro muestra el método de interrupción para la ventana actual.
bufferfile [archivo-de-intercambio]
Cambia el nombre de archivo utilizado para leer y escribir en el búfer de pegado. Si se omite el argumento opcional del comando bufferfile, se reactiva la configuración predeterminada (/tmp/screen-exchange). El siguiente ejemplo pegará el archivo de contraseñas del sistema en la ventana de la pantalla (usando el búfer de pegado, donde se queda una copia):
C-a : bufferfile /etc/passwd
C-a < C-a ]
C-a : bufferfile
bumpleft
Intercambia la ventana con la anterior en la lista de ventanas.
bumpright
Intercambia la ventana con la siguiente en la lista de ventanas.
c1 [on | off]
Cambia el procesamiento del código c1. C1 on indica a screen que trate los caracteres de entrada entre 128 y 159 como funciones de control. Dicho código de 8 bits normalmente es el mismo que ESC seguido del código de 7 bits correspondiente. La configuración predeterminada es procesar los códigos c1, y esto se puede cambiar con el comando defc1. Los usuarios con fuentes que tengan caracteres utilizables en las posiciones c1 pueden desear desactivarlo.
caption [top | bottom] always|splitonly[cadena]
caption cadena [cadena]
Este comando controla la visualización de los encabezados de ventana. Normalmente, un encabezado solo se utiliza si hay más de una ventana mostrada en la pantalla (modo de pantalla dividida). Pero si el tipo se establece en always, screen muestra un encabezado incluso si solo hay una ventana mostrada. El valor predeterminado es splitonly.
La segunda forma cambia el texto utilizado para el encabezado. Puede utilizar todos los escapes de la sección ESCAPES DE CADENA. Screen utiliza un valor predeterminado de `%3n %t'.
Puede combinar ambas formas proporcionando una cadena como un argumento adicional.
Puede tener el encabezado mostrado en la parte superior o inferior de la ventana. El valor predeterminado es inferior.
charset conjunto
Cambia la designación de la ranura del conjunto de caracteres actual y el mapeo de conjuntos de caracteres. Los primeros cuatro caracteres de conjunto se tratan como designadores de conjuntos de caracteres, mientras que el quinto y el sexto carácter deben estar en el rango de '0' a '3' y establecen el mapeo de conjuntos de caracteres GL/GR. En cada posición se puede utilizar un '.' para indicar que el conjunto de caracteres/mapeo correspondiente no debe cambiarse (el conjunto se rellena internamente con seis caracteres añadiendo caracteres '.'). Las nuevas ventanas tienen "BBBB02" como conjunto de caracteres predeterminado, a menos que haya un comando de codificación activo. La configuración actual se puede ver con el comando info.
chdir [directorio]
Cambia el directorio actual de screen al directorio especificado o, si se llama sin un argumento, a su directorio de inicio (el valor de la variable de entorno $HOME). Todas las ventanas que se crean mediante el comando screen dentro de .screenrc o mediante C-a : screen ... o C-a c utilizan este como su directorio predeterminado. Sin un comando chdir, este sería el directorio desde el que se invocó screen. Los archivos de copia impresa y de registro siempre se escriben en el directorio predeterminado de la ventana, no en el directorio actual del proceso que se ejecuta en la ventana. Puede utilizar este comando varias veces en su .screenrc para iniciar varias ventanas en diferentes directorios predeterminados, pero el último valor de chdir afectará a todas las ventanas que cree de forma interactiva.
cjkwidth [ on | off ]
Trata los caracteres de ancho ambiguo como de ancho completo/medio.
clear
Limpia la ventana actual y guarda su imagen en el búfer de desplazamiento.
collapse
Reordena las ventanas en la lista, eliminando los espacios numéricos entre ellas.
colon [prefijo]
Permite introducir líneas de comandos .screenrc. Útil para la modificación sobre la marcha de las asignaciones de teclas, la creación específica de ventanas y el cambio de la configuración. Tenga en cuenta que la palabra clave `set` ya no existe. Por lo general, los comandos afectan a la ventana actual en lugar de a la configuración predeterminada para las ventanas futuras. Cambie la configuración predeterminada con los comandos que comienzan con `def...`.
Si considera esto como el "modo de comando Ex" de screen, puede considerar C-a esc (modo de copia) como su "modo de comando Vi".
command [ -c clase"]"
Este comando tiene el mismo efecto que escribir el carácter de escape de screen (^A). Probablemente solo sea útil para las asignaciones de teclas. Si se da la opción `-c`, seleccione la clase de comando especificada. Consulte también `bind` y `bindkey`.
compacthist [ on | off ]
Esto indica a screen si debe suprimir las líneas en blanco finales al desplazar el texto hacia arriba en el búfer de historial.
console [ on | off ]
Captura o libera la salida de la consola de la máquina en una ventana. Nota: Solo el propietario de /dev/console puede capturar la salida de la consola. Este comando solo está disponible si la máquina admite la ioctl TIOCCONS.
copy
Entra en el modo de copia/desplazamiento. Esto le permite copiar texto de la ventana actual y su historial en el búfer de pegado. En este modo, hay un "editor de pantalla completa similar a vi" activo:
Las teclas de movimiento del editor son:
h, C-h, mueve el cursor a la izquierda.
flecha izquierda
j, C-n, mueve el cursor hacia abajo.
flecha abajo
k, C-p, mueve el cursor hacia arriba.
flecha arriba
l ('el'), mueve el cursor a la derecha.
flecha derecha
0(cero) C-a mueve al la columna más a la izquierda.
+ y - posiciona una línea hacia arriba y hacia abajo.
H, M y L mueve el cursor a la columna más a la izquierda de la línea superior, central o inferior de la ventana.
| mueve a la columna absoluta especificada.
g o inicio mueve al comienzo del búfer.
G o fin mueve a la línea absoluta especificada (predeterminado: final del búfer).
% salta al porcentaje especificado del búfer.
^ o $ mueve a la columna más a la izquierda, al primer o último carácter que no sea un espacio en blanco de la línea.
w, b y e mueve el cursor palabra por palabra.
B, E mueve el cursor PALABRA por PALABRA (como en vi).
f/F, t/T mueve el cursor hacia adelante/atrás a la siguiente ocurrencia del objetivo. (por ejemplo, '3fy' moverá el cursor a la 3.ª 'y' a la derecha).
; y , Repite el último comando f/F/t/T en la misma/dirección opuesta.
C-e y C-y desplaza la pantalla hacia arriba/abajo en una línea, manteniendo la posición del cursor.
C-u y C-d desplaza la pantalla hacia arriba/abajo en la cantidad de líneas especificada, manteniendo la posición del cursor. (Predeterminado: la mitad de la pantalla-completa).
C-b y C-f desplazan la pantalla hacia arriba/abajo una pantalla completa.
Nota: Los comandos de movimiento estilo Emacs se pueden personalizar mediante un comando .screenrc. (Ej., `markkeys "h=^B:l=^F:$=^E"`) No existe un método sencillo para un mapa de teclas completo de estilo Emacs, ya que esto implica códigos de varios caracteres.
Algunas teclas están definidas para realizar operaciones de marcado y reemplazo.
El rango de copia se especifica estableciendo dos marcas. El texto entre estas marcas se resaltará. Pulse:
barra espaciadora o intro para establecer la primera o segunda marca, respectivamente. Si `mousetrack` está establecido en `on`, las marcas también se pueden establecer utilizando el clic izquierdo del ratón.
Y y y se utilizan para marcar una línea completa o para marcar desde el principio de la línea.
W marca exactamente una palabra.
Cualquiera de estos comandos se puede prefijar con un número de repetición presionando los dígitos
.9, que se toma como un conteo de repetición.
Ejemplo: C-a C-[ H 10 j 5 Y copiará las líneas 11 a 15 en el búfer de pegado.
Las siguientes teclas de búsqueda están definidas:
/ Búsqueda similar a Vi hacia adelante.
? Búsqueda similar a Vi hacia atrás.
C-a s Búsqueda incremental de estilo Emacs hacia adelante.
C-r Búsqueda inversa de estilo Emacs.
n Encuentra el siguiente patrón de búsqueda.
N Encuentra el patrón de búsqueda anterior.
Sin embargo, algunas teclas actúan de manera diferente que en vi. Vi no permite copiar bloques rectangulares de texto, pero screen sí. Pulse: c o C para establecer el margen izquierdo o derecho respectivamente. Si no se proporciona un número de repetición, ambos tienen como valor predeterminado la posición actual del cursor.
Ejemplo: Pruébelo en una pantalla de texto bastante completa:
C-a [ M 20 l ESPACIO c 10 l 5 j ESPACIO.
Esto mueve a la línea del medio de la pantalla, se mueve 20 columnas a la izquierda, marca el principio del búfer de pegado, establece la columna izquierda, se mueve 5 columnas hacia abajo, establece la columna derecha y luego marca el final del búfer de pegado. Ahora pruebe:
C-a [ M 20 l ESPACIO 10 l 5 j ESPACIO
y observe la diferencia en la cantidad de texto que se copia.
J une líneas. Alterna entre 4 modos: líneas separadas por un carácter de nueva línea (012), líneas unidas sin espacios, líneas separadas por un solo espacio en blanco y líneas separadas por comas. Tenga en cuenta que puede anteponer el carácter de nueva línea con un carácter de retorno de carro, emitiendo un comando crlf on.
v o V es para todos los usuarios de vi con `:set numbers`: alterna el margen izquierdo entre la columna 9 y 1. Pulse
a antes de la última tecla de espacio para alternar al modo de agregar. Por lo tanto, el contenido del búfer de pegado no se sobrescribirá, sino que se agregará.
A alterna al modo de agregar y establece una (segunda) marca.
> establece la (segunda) marca y escribe el contenido del búfer de pegado en el archivo de intercambio de screen (/tmp/screen-exchange por defecto) una vez que finaliza el modo de copia.
Este ejemplo demuestra cómo volcar todo el búfer de retroceso en ese archivo: C-A [ g ESPACIO G $ >.
C-g proporciona información sobre la línea y la columna actuales.
x o o intercambia la primera marca y la posición actual del cursor. Puede utilizar esto para ajustar una marca ya colocada.
C-l ('el') volverá a dibujar la pantalla.
@ no hace nada. Ni siquiera sale del modo de copia.
Todas las teclas no descritas aquí salen del modo de copia.
copy_reg [clave]
Ya no existe, use readreg en su lugar.
crlf [on | off]
Esto afecta a la copia de regiones de texto con el comando `C-a [`. Si se establece en `on`, las líneas se separarán mediante la secuencia de dos caracteres CR - LF. De lo contrario (por defecto), solo se utiliza LF. Cuando no se proporciona ningún parámetro, el estado se alterna.
debug [on | off]
Activa o desactiva la depuración en tiempo de ejecución. Si screen se ha compilado con la opción -DDEBUG, la depuración está disponible y se activa por defecto. Tenga en cuenta que este comando solo afecta a la salida de depuración del proceso SCREEN principal. La salida de depuración de los procesos adjuntos solo se puede desactivar una vez y para siempre.
defc1 [on | off]
Igual que el comando c1, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es `on`.
defautonuke [on | off]
Igual que el comando autonuke, excepto que se cambia la configuración predeterminada para las nuevas pantallas. La configuración inicial es `off`. Tenga en cuenta que puede utilizar la capacidad especial AN si desea tener una dependencia del tipo de terminal.
defbce [on | off]
Igual que el comando bce, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es `off`.
defbreaktype [tcsendbreak|TIOCSBRK|TCSBRK]
Elija uno de los métodos disponibles para generar una señal de interrupción para dispositivos de terminal. Los métodos preferidos son tcsendbreak y TIOCSBRK. El tercero, TCSBRK, bloquea toda la sesión de screen durante la duración de la interrupción, pero puede ser la única forma de generar interrupciones largas. tcsendbreak y TIOCSBRK pueden o no producir interrupciones largas con picos (por ejemplo, 4 por segundo). Esto no solo depende del sistema, sino también de los controladores de la tarjeta serie. Llamar a defbreaktype sin ningún parámetro muestra la configuración actual.
defcharset [conjunto]
Como el comando charset, excepto que se cambia la configuración predeterminada para las nuevas ventanas. Muestra la configuración predeterminada actual si se llama sin argumento.
defdynamictitle [on | off]
Establece el comportamiento predeterminado para las nuevas ventanas con respecto a si screen debe cambiar el título de la ventana cuando vea la secuencia de escape adecuada. Consulte también la sección "TÍTULOS (asignación de nombres a las ventanas)".
defescape xy
Establece el comando predeterminado. Esto es equivalente al comando escape, excepto que es útil solo para sesiones multiusuario. En una sesión multiusuario, escape cambia el carácter de comando del usuario que llama, mientras que defescape cambia los caracteres de comando predeterminados para los usuarios que se añadirán más tarde.
defflow [on | off | auto [interrupt]]
Igual que el comando flow, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es `auto`. Especificar defflow auto interrupt es lo mismo que las opciones de línea de comandos -fa y -i.
defgr [on | off]
Igual que el comando gr, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es `off`.
defhstatus [estado]
La línea hardstatus que tendrán todas las nuevas ventanas se establece en estado. Este comando es útil para que la línea hardstatus de cada ventana muestre el número de ventana o el título, etc. El estado puede contener los mismos directivos que en los mensajes de ventana, pero el directivo de escape es '^E' (octal 005) en lugar de '%'. Esto se hizo para que fuera imposible una mala interpretación de las líneas hardstatus generadas por el programa. Si se omite el parámetro estado, se muestra la cadena predeterminada actual. Por defecto, la línea hardstatus de las nuevas ventanas está vacía.
defencoding enc
Similar al comando encoding, excepto que se cambia la configuración predeterminada para las nuevas ventanas.
La configuración inicial es la codificación tomada de la terminal.
deflog [ on | off ]
Similar al comando log, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es off.
deflogin [ on | off ]
Similar al comando login, excepto que se cambia la configuración predeterminada para las nuevas ventanas. Esto se inicializa con on cuando se distribuye (ver config.h.in).
defmode mode
El modo de cada pseudo-terminal recién asignado se establece en mode. Mode es un número octal. Si no se da el comando defmode, se utiliza el modo 0622.
defmonitor [ on | off]
Similar al comando monitor, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es off.
defmousetrack [ on | off ]
Similar al comando mousetrack, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es off.
defnonblock [ on | off | numsecs]
Similar al comando nonblock, excepto que se cambia la configuración predeterminada para las pantallas. La configuración inicial es off.
defobuflimit limit
Similar al comando obuflimit, excepto que se cambia la configuración predeterminada para las nuevas pantallas. La configuración inicial es de 256 bytes. Tenga en cuenta que puede utilizar la capacidad especial OL del terminal si desea tener una dependencia del tipo de terminal.
defscrollback num
Similar al comando scrollback, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es 100.
defshell command
Sinónimo del comando shell .screenrc. Véase allí.
defsilence [ on | off ]
Similar al comando silence, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es off.
defslowpaste msec
Similar al comando slowpaste, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es de 0 milisegundos, lo que significa off.
defutf8 [ on | off ]
Similar al comando utf8, excepto que se cambia la configuración predeterminada para las nuevas ventanas. La configuración inicial es on si screen se inició con -U, de lo contrario off.
defwrap [ on | off ]
Similar al comando wrap, excepto que se cambia la configuración predeterminada para las nuevas ventanas. Inicialmente, el ajuste de línea está activado y se puede alternar con el comando wrap (C-a r) o mediante "C-a : wrap on|off".
defwritelock [ on | off | auto ]
Similar al comando writelock, excepto que se cambia la configuración predeterminada para las nuevas ventanas. Inicialmente, los bloqueos de escritura estarán desactivados.
detach [-h]
Desconectar la sesión de screen (desconectarla del terminal y ponerla en segundo plano).
Esto le devuelve a la shell donde invocó screen. Se puede reanudar una sesión de screen desconectada invocando screen con la opción -r (véase también la sección OPCIONES DE LA LÍNEA DE COMANDOS). La opción -h indica a screen que cierre inmediatamente la conexión al terminal (cierre la sesión).
dinfo
Muestra lo que screen "piensa" sobre tu terminal. Útil si quieres saber por qué características como el color o el conjunto de caracteres alternativo no funcionan.
displays
Muestra una lista tabular de todos los front-ends de usuario (pantallas) conectados actualmente. Esto es más útil para sesiones multiusuario. Se pueden usar las siguientes teclas en la lista de pantallas:
k, C-p, o arriba Mueve una línea hacia arriba.
j, C-n, o abajo Mueve una línea hacia abajo.
C-a o inicio Mueve a la primera línea.
C-e o fin Mueve a la última línea.
C-u o C-d Mueve media página hacia arriba o hacia abajo.
C-b o C-f Mueve una página completa hacia arriba o hacia abajo.
clic del ratón Mueve a la línea seleccionada. Disponible cuando mousetrack está configurado en "on".
espacio Actualiza la lista
d Desconecta esa pantalla
D Desconecta esa pantalla de forma forzada
C-g, intro, o escape Sale de la lista
El siguiente es un ejemplo de cómo podría verse la salida de "displays": xterm 80x42 jnweiger@/dev/ttyp4 0(m11) &rWx facit 80x24 mlschroe@/dev/ttyhf nb 11(tcsh) rwx xterm 80x42 jnhollma@/dev/ttyp5 0(m11) &R.x (A) (B) (C) (D) (E) (F) (G) (H) (I)
La leyenda es la siguiente:
(A) El tipo de terminal que screen conoce para esta pantalla.
(B) Geometría de la pantalla como ancho x alto.
(C) Nombre de usuario que ha iniciado sesión en la pantalla.
(D) Nombre del dispositivo de la pantalla o del dispositivo adjunto
(E) La pantalla está en modo de bloqueo o no bloqueo. Los modos disponibles son "nb", "NB", "Z<", "Z>" y "BL".
(F) Número de la ventana
(G) Nombre/título de la ventana
(H) Si la ventana está compartida
(I) Permisos de la ventana. Compuesto por tres caracteres.
┌─────────────────────────────────────────────────────────┐
│ Indicadores de permisos de ventana │
├──────────────────┬──────────────────┬───────────────────┤
│ 1er carácter │ 2do carácter │ 3er carácter │
├─────┬────────────┼─────┬────────────┼─────┬─────────────┤
│ - │sin lectura │ - │sin escritura │ - │sin ejecución│
├─────┼────────────┼─────┼────────────┼─────┼─────────────┤
│ r │lectura │ w │escritura │ x │ejecución │
├─────┼────────────┼─────┼────────────┼─────┼─────────────┤
│ │ │ W │bloqueo propio │ │ │
├─────┴────────────┴─────┴────────────┴─────┴─────────────┤
│ Indicadores de permisos suprimidos por un bloqueo de ventana ajeno│
├─────┬────────────┬─────┬────────────┬─────┬─────────────┤
│ R │solo lectura│ . │sin escritura│ │ │
└─────┴────────────┴─────┴────────────┴─────┴─────────────┘
muestra que la región debe tener un ancho de al menos 10 caracteres y una altura de 5 caracteres para poder mostrarse.
digraph [preset[unicode-value]]
Este comando solicita al usuario una secuencia de dígrafo. Los dos caracteres siguientes que se escriben se buscan en una tabla integrada y el carácter resultante se inserta en el flujo de entrada. Por ejemplo, si el usuario introduce 'a"', se insertará una 'a' con diéresis. Si el primer carácter introducido es un 0 (cero), screen tratará los caracteres siguientes (hasta tres) como un número octal. El argumento opcional preset se trata como entrada del usuario, por lo que se puede crear una tecla de diéresis. Por ejemplo, el comando "bindkey ^K digraph '"'" permite al usuario generar una 'a' con diéresis escribiendo CTRL-K a. Cuando se especifica un unicode-value diferente de cero, se crea un nuevo dígrafo con el preset especificado. El dígrafo se elimina si se proporciona un valor de cero para unicode-value.
dumptermcap
Escribe la entrada de termcap para el terminal virtual optimizado para la ventana actualmente activa en el archivo .termcap en el directorio $HOME/.screen del usuario (o dondequiera que screen almacene sus sockets. Consulte la sección FILES a continuación). Esta entrada de termcap es idéntica al valor de la variable de entorno $TERMCAP que screen configura para cada ventana. Para los sistemas basados en terminfo, deberá ejecutar un convertidor como captoinfo y luego compilar la entrada con tic.
dynamictitle [on | off]
Cambia el comportamiento de las ventanas con respecto a si screen debe cambiar el título de la ventana cuando vea una secuencia de escape adecuada. Consulte también la sección "TITLES (nombramiento de ventanas)".
echo [-n] message
El comando echo se puede utilizar para molestar a los usuarios de screen con un "mensaje del día". Normalmente se instala en un archivo /etc/screenrc global. La opción -n se puede utilizar para suprimir el salto de línea. Consulte también sleep. Echo también es útil para comprobar en línea las variables de entorno.
encoding enc [enc]
Indica a screen cómo interpretar la entrada/salida. El primer argumento establece la codificación de la ventana actual. Cada ventana puede emular una codificación diferente. El segundo parámetro opcional reemplaza la codificación del terminal conectado. No debería ser necesario, ya que screen utiliza la configuración regional para detectar la codificación. También hay una forma de seleccionar una codificación de terminal en función del tipo de terminal mediante la entrada de termcap KJ.
Las codificaciones admitidas son eucJP, SJIS, eucKR, eucCN, Big5, GBK, KOI8-R, KOI8-U, CP1251, UTF-8, ISO8859-2, ISO8859-3, ISO8859-4, ISO8859-5, ISO8859-6, ISO8859-7, ISO8859-8, ISO8859-9, ISO8859-10, ISO8859-15, jis.
Consulte también defencoding, que cambia la configuración predeterminada de una nueva ventana.
escape xy
Establece el carácter de comando en x y el carácter que genera un carácter de comando literal (al activar el comando meta) en y (similar a la opción -e). Cada argumento es un solo carácter, una secuencia de dos caracteres de la forma ^x (que significa C-x), una barra diagonal seguida de un número octal (que especifica el código ASCII del carácter) o una barra diagonal seguida de un segundo carácter, como \^ o \\. El valor predeterminado es ^Aa.
eval command1[command2 ...]
Analiza y ejecuta cada argumento como comandos separados.
exec [[fdpat]newcommand [args ...]]
Ejecuta un subproceso de Unix (especificado por la ruta del ejecutable newcommand y sus argumentos opcionales) en la ventana actual. El flujo de datos entre la entrada/salida estándar/error estándar de newcommand, el proceso que se inició originalmente en la ventana (llamémoslo "proceso de aplicación") y el propio screen (ventana) se controla mediante el patrón de descriptor de archivo fdpat. Este patrón es básicamente una secuencia de tres caracteres que representa la entrada, la salida y el error estándar de newcommand. Un punto (.) conecta el descriptor de archivo con screen. Un signo de exclamación (!) hace que el descriptor de archivo se conecte al proceso de aplicación. Dos puntos (:) combinan ambos. La entrada del usuario se enviará a newcommand a menos que newcommand reciba la salida del proceso de aplicación (el primer carácter de fdpats es `!' o `:') o se agregue un símbolo de barra vertical (|) (como un cuarto carácter) al final de fdpat.
Invocar `exec` sin argumentos muestra el nombre y los argumentos del subproceso que se está ejecutando actualmente en esta ventana. Solo se puede ejecutar un subproceso a la vez en cada ventana.
Cuando se está ejecutando un subproceso, el comando `kill` lo afectará en lugar del proceso de la ventana.
Consulte el archivo PostScript `doc/fdpat.ps` para ver una ilustración confusa de todas las 21 combinaciones posibles. Cada dibujo muestra los dígitos 2, 1, 0 que representan los tres descriptores de archivo de newcommand. El cuadro marcado con la letra `W` es el pty habitual que tiene el proceso de aplicación en su lado esclavo. El cuadro marcado con la letra `P` es el pty secundario que ahora tiene screen en su lado maestro.
Abreviaturas: Se puede omitir el espacio en blanco entre la palabra `exec` y fdpat, así como el comando. Se pueden omitir los puntos finales y un fdpat que consista solo en puntos. Un simple `|` es sinónimo del patrón `!..|`; la palabra exec se puede omitir aquí y siempre se puede reemplazar por `!`.
Ejemplos:
exec ... /bin/sh
exec /bin/sh
!/bin/sh
Crea otra shell en la misma ventana, mientras que la shell original sigue ejecutándose. La salida de ambas shells se muestra y la entrada del usuario se envía a la nueva /bin/sh.
exec !.. stty 19200
exec ! stty 19200
!!stty 19200
Establece la velocidad del tty de la ventana. Si tu comando stty opera sobre stdout, entonces añade otro `!'.
exec !..| less
|less
Añade un paginador a la salida de la ventana. El carácter especial `|\' es necesario para darle
al usuario el control sobre el paginador, aunque éste recibe su entrada del proceso de la ventana. Esto funciona porque less escucha en stderr (un comportamiento que screen no esperaría sin el |) cuando su stdin no es un tty. Las versiones de less más recientes que 177 fallan miserablemente aquí; el viejo pg todavía funciona.
!:sed -n s/.*Error.*/\007/p
Envía la salida de la ventana tanto al usuario como al comando sed. El sed inserta un carácter de campana adicional (octal 007) a la salida de la ventana que se muestra en screen. Esto provocará mensajes "Campana en la ventana x" cada vez que la cadena "Error" aparezca en la ventana.
fit
Cambia el tamaño de la ventana al tamaño de la región actual. Este comando es necesario porque screen no adapta automáticamente el tamaño de la ventana si la ventana se muestra más de una vez.
flow [ on | off | auto]
Establece el modo de control de flujo para esta ventana. Sin parámetros, alterna la configuración de control de flujo de la ventana actual de "automático" a "encendido" a "apagado". Consulta la discusión sobre CONTROL DE FLUJO más adelante en este documento para obtener todos los detalles y ten en cuenta que esto puede cambiar en futuras versiones. El valor predeterminado se establece mediante `defflow'.
focus [ next | prev | up | down | left | right | top | bottom ]
Mueve el foco de entrada a la siguiente región. Esto se hace de forma cíclica, de modo que la región superior izquierda se selecciona después de la región inferior derecha. Si no se da ninguna opción, el valor predeterminado es next. La siguiente región que se seleccionará se determina por cómo se organizan las regiones en capas. Normalmente, la siguiente región en la misma capa se seleccionaría. Sin embargo, si esa siguiente región contiene una o más capas, la primera región de la capa superior se seleccionará primero. Si estás en la última región de la capa actual, next moverá el foco a la siguiente región en la capa inferior (si hay una capa inferior). Prev realiza el ciclo en el orden opuesto. Consulta split para obtener más información sobre las capas.
El resto de las opciones (`up', `down', `left', `right', `top' y `bottom') son más indiferentes a las capas. La opción up moverá el foco hacia arriba a la región que toca la esquina superior izquierda de la región actual. Down se moverá hacia abajo a la región que toca la esquina inferior izquierda de la región actual. La opción left moverá el foco hacia la izquierda a la región que toca la esquina superior izquierda de la región actual, mientras que right se moverá hacia la derecha a la región que toca la esquina superior derecha de la región actual. Moverse hacia la izquierda desde una región más a la izquierda o moverse hacia la derecha desde una región más a la derecha no tendrá ningún efecto.
La opción top moverá el foco a la primera región en la esquina superior izquierda de la pantalla, y bottom lo moverá a la región en la esquina inferior derecha de la pantalla. Moverse hacia arriba desde una región en la parte superior o moverse hacia abajo desde una región en la parte inferior no tendrá ningún efecto.
Las siguientes son asignaciones útiles (h, j, k y l, como en vi): bind h focus left bind j focus down bind k focus up bind l focus right bind t focus top bind b focus bottom Tenga en cuenta que k tradicionalmente está vinculado al comando kill.
focusminsize [ ( width|max|_ ) ( height|max|_ ) ]
Esto fuerza a que cualquier región seleccionada se redimensione automáticamente a un ancho y alto mínimos. Todas las demás regiones circundantes se redimensionarán para adaptarse. Esta restricción se aplicará cada vez que se utilice el comando focus. El comando resize se puede utilizar para aumentar cualquiera de las dimensiones de una región, pero nunca por debajo de lo establecido con focusminsize. El guión bajo _ es sinónimo de max. Establecer un ancho y alto de 0 0 (cero cero) anulará cualquier restricción y permitirá el redimensionamiento manual. Sin ningún parámetro, se mostrará el ancho y alto mínimos.
gr [ on | off ]
Activa o desactiva el cambio de conjunto de caracteres GR. Cada vez que screen detecte un carácter de entrada con el octavo bit activado, utilizará el conjunto de caracteres almacenado en la ranura GR e imprimirá el carácter con el octavo bit desactivado. El valor predeterminado (consulte también defgr) es no procesar el cambio GR, de lo contrario, el conjunto de caracteres ISO88591 no funcionaría.
group [grouptitle]
Cambia o muestra el grupo al que pertenece la ventana actual. Las ventanas se pueden mover entre diferentes grupos especificando el nombre del grupo de destino. Sin especificar un grupo, se mostrará el título del grupo actual.
hardcopy [-h] [file]
Escribe la imagen mostrada actualmente en el archivo file, o, si no se especifica ningún nombre de archivo, en hardcopy.n en el directorio predeterminado, donde n es el número de la ventana actual. Esto agrega o sobrescribe el archivo si existe. Consulte a continuación. Si se especifica la opción -h, también se volcará el contenido del búfer de desplazamiento.
hardcopy_append [ on | off ]
Si se establece en "on", screen agregará los archivos "hardcopy.n" creados por el comando C-a h, de lo contrario, estos archivos se sobrescribirán cada vez. El valor predeterminado es "off".
hardcopydir directory
Define un directorio donde se colocarán los archivos hardcopy. Si no se define, los hardcopys se volcarán en el directorio de trabajo actual de screen.
hardstatus [ on | off ]
hardstatus [ always ] firstline | lastline | message | ignore [ string ]
hardstatus string [ string ]
Este comando configura el uso y la emulación de la línea de estado del terminal. La primera forma activa o desactiva si screen utilizará la línea de estado de hardware para mostrar mensajes. Si la marca se establece en "off", estos mensajes se superpondrán en modo de video inverso en la línea de visualización. La configuración predeterminada es "on".
La segunda forma le indica a screen qué hacer si la terminal no tiene una línea de estado fijo (es decir, las capacidades termcap/terminfo "hs", "ts", "fs" y "ds" no están configuradas). Cuando se usa firstline/lastline, screen reservará la primera/última línea de la pantalla para el estado fijo. message usa el mecanismo de mensajes de screen e ignore le indica a screen que nunca muestre el estado fijo. Si precede la palabra always al tipo (por ejemplo, alwayslastline), screen usará el tipo incluso si la terminal admite un estado fijo.
La tercera forma especifica el contenido de la línea de estado fijo. '%h' se usa como cadena predeterminada, es decir, se muestra el estado fijo almacenado de la ventana actual (que se puede establecer mediante ESC]0;<string>^G o ESC_<string>ESC). Puede personalizar esto a cualquier cadena que desee, incluidos los escapes del capítulo STRING ESCAPES. Si omite el argumento de cadena, se muestra la cadena actual.
Puede combinar la segunda y la tercera forma proporcionando la cadena como argumento adicional.
height [-w|-d] [lines [cols]]
Establece la altura de la pantalla a un número especificado de líneas. Si no se proporciona ningún argumento, alterna entre una pantalla de 24 y 42 líneas. También puede especificar un ancho si desea cambiar ambos valores. La opción -w le indica a screen que deje el tamaño de la pantalla sin cambios y simplemente establezca el tamaño de la ventana, -d viceversa.
help[class]
No es realmente una ayuda en línea, sino que muestra una pantalla de ayuda que muestra todas las vinculaciones de teclas. Las primeras páginas enumeran todos los comandos internos seguidos de sus vinculaciones actuales. Las páginas posteriores mostrarán los comandos personalizados, un comando por tecla. Presione la barra espaciadora cuando termine de leer cada página, o presione retroceso para salir antes. Todos los demás caracteres se ignoran. Si se da la opción -c, muestre todos los comandos vinculados para la clase de comandos especificada. Consulte también la sección VINCULACIONES DE TECLAS PREDETERMINADAS.
history
Normalmente, los usuarios trabajan con una shell que permite un fácil acceso a los comandos anteriores. Por ejemplo, csh tiene el comando !! para repetir el último comando ejecutado. Screen le permite tener una forma primitiva de volver a llamar al comando que inició ...: simplemente escribe la primera letra de ese comando y luego presiona C-a {' y screen intenta encontrar una línea anterior que coincida con elcarácter de indicación` a la izquierda del cursor. Esta línea se pega en la cola de entrada de esta ventana. Por lo tanto, tiene un historial de comandos rudimentario (compuesto por la ventana visible y su búfer de desplazamiento).
hstatus status
Cambia la línea de estado fijo de la ventana a la cadena status.
idle [timeout[cmd-args]]
Establece un comando que se ejecuta después de que se alcanza el número especificado de segundos de inactividad. Este comando normalmente será el comando de enmascaramiento para crear un protector de pantalla, pero puede ser cualquier comando de screen. Si no se especifica ningún comando, solo se establece el tiempo de espera. Un tiempo de espera de cero (o el tiempo de espera especial off) desactiva el temporizador. Si no se proporcionan argumentos, se mostrarán la configuración actual.
ignorecase [ on | off ]
Indica a screen que ignore las mayúsculas y minúsculas de los caracteres en las búsquedas. El valor predeterminado es off. Sin ninguna opción, el estado de ignorecase se alterna.
info
Utiliza la línea de mensajes para mostrar información sobre la ventana actual: la posición del cursor en el formato (columna, fila), comenzando con (1,1), el ancho y el alto de la terminal, además del tamaño del búfer de desplazamiento en líneas, como en (80,24)+50. El estado actual del control de flujo XON/XOFF de la ventana se muestra de la siguiente manera (véase también la sección CONTROL DE FLUJO):
┌──────────┬──────────────────────────────────────────────────────────┐
│ +flow │ control de flujo automático, actualmente activado. │
├──────────┼──────────────────────────────────────────────────────────┤
│ -flow │ control de flujo automático, actualmente desactivado. │
├──────────┼──────────────────────────────────────────────────────────┤
│ +(+)flow │ control de flujo habilitado. Coincide con el control automático. │
├──────────┼──────────────────────────────────────────────────────────┤
│ -(+)flow │ control de flujo deshabilitado. No coincide con el control automático. │
├──────────┼──────────────────────────────────────────────────────────┤
│ +(-)flow │ control de flujo habilitado. No coincide con el control automático. │
├──────────┼──────────────────────────────────────────────────────────┤
│ -(-)flow │ control de flujo deshabilitado. Coincide con el control automático. │
└──────────┴──────────────────────────────────────────────────────────┘
La configuración actual de ajuste de línea (+wrap indica activado, -wrap indica desactivado) también se muestra. Las marcas ins, org, app, log, mon o nored se muestran cuando la ventana está en modo de inserción, modo de origen, modo de teclado de aplicación, tiene registro de salida, monitoreo de actividad o actualización parcial habilitada.
El conjunto de caracteres activo actualmente (G0, G1, G2 u G3) y entre corchetes, los conjuntos de caracteres de terminal que se designan actualmente como G0 a G3 se muestran. Si la ventana está en modo UTF-8, se muestra la cadena UTF-8 en su lugar.
Los modos adicionales, dependiendo del tipo de ventana, se muestran al final de la línea de estado (Consulte también el capítulo TIPOS DE VENTANAS).
Si la máquina de estados del emulador de terminal está en un estado no predeterminado, la línea de información comienza con una cadena que identifica el estado actual.
Para obtener información del sistema, use el comando time.
ins_reg [clave]
Ya no existe, use paste en su lugar.
kill
Elimina la ventana actual.
Si hay un comando exec en ejecución, este se detiene. De lo contrario, el proceso (shell) que se ejecuta en la
ventana recibe una condición HANGUP, la estructura de la ventana se elimina y screen (su pantalla) cambia
a otra ventana. Cuando se destruye la última ventana, screen se cierra. Después de un kill, screen cambia a la ventana que se mostraba anteriormente.
Nota: Los usuarios de Emacs deben tener en cuenta este comando al eliminar una línea. Se recomienda no
usar C-a como tecla de escape de screen o reasignar kill a C-a K.
lastmsg
Vuelve a mostrar el último contenido de la línea de mensaje/estado. Útil si está escribiendo cuando aparece un mensaje, porque el mensaje desaparece cuando presiona una tecla (a menos que su terminal tenga una línea de estado de hardware). Consulte los comandos msgwait y msgminwait para una configuración más precisa.
layout new [título]
Crea una nueva disposición. La pantalla cambiará a una región completa y cambiará a la ventana en blanco. Desde aquí, construye las regiones y las ventanas que mostrará según lo desee. La nueva disposición se numerará con el entero disponible más pequeño, comenzando con cero. Opcionalmente, puede asignar un título a su nueva disposición. De lo contrario, tendrá un título predeterminado de layout. Siempre puede cambiar el título más tarde utilizando el comando layout title.
layout remove [n|título]
Elimina, o dicho de otra manera, borra la disposición especificada. Se puede especificar el número o el título. Sin ninguna de las especificaciones, screen eliminará la disposición actual.
Eliminar una disposición no afecta a sus ventanas o regiones establecidas.
layout next
Cambia a la siguiente disposición disponible
layout prev
Cambia a la disposición anterior disponible
layout select [n|título]
Selecciona la disposición deseada. Se puede especificar el número o el título. Sin ninguna de las especificaciones, screen solicitará y preguntará qué disposición se desea. Para ver qué disposiciones están disponibles, use el comando layout show.
layout show
Enumera en la línea de mensaje los números y títulos de las disposiciones disponibles. La disposición actual está marcada.
layout title [título]
Cambia o muestra el título de la disposición actual. Si se proporciona una cadena, se utilizará para nombrar la disposición. Sin ninguna opción, el título y el número actuales se muestran en la línea de mensaje.
layout number [n]
Cambia o muestra el número de la disposición actual. Si se proporciona un entero, se utilizará para numerar la disposición. Sin ninguna opción, el número y el título actuales se muestran en la línea de mensaje.
layout attach [title|:last]
Cambia o muestra qué diseño reanexar. El valor predeterminado es :last, lo que indica a screen que reanexe el último diseño utilizado antes de la desconexión. Al proporcionar un título, puede indicar a screen que se reanexe a un diseño específico, independientemente del que se estuviera utilizando en el momento de la desconexión. Sin ninguna opción, el diseño al que se reanexará se mostrará en la línea de mensajes.
layout save [n|title]
Recuerda la disposición actual de las regiones. Cuando se utiliza, screen recordará la disposición de las regiones divididas vertical y horizontalmente. Esta disposición se restaura cuando se reanexa una sesión de screen o se vuelve a cambiar desde un diseño diferente. Si la sesión termina o el proceso de screen finaliza, las disposiciones se perderán. El comando layout dump puede ayudar en esta situación. Si se proporciona un número o un título, screen recordará la disposición de ese diseño en particular. Sin ninguna opción, screen recordará el diseño actual.
Puede guardar sus regiones automáticamente utilizando el comando layout autosave.
layout autosave [on | off]
Cambia o muestra el estado del guardado automático de los diseños. El valor predeterminado es on, lo que significa que cuando screen se desconecta o cambia a un diseño diferente, la disposición de las regiones y ventanas se recordará en el momento del cambio y se restaurará al regresar. Si autosave se establece en off, esa disposición solo se restaurará ya sea al último guardado manual, utilizando layout save, o al momento en que se creó el diseño, a una sola región con una sola ventana. Sin especificar on u off, el estado actual se mostrará en la línea de mensajes.
layout dump [filename]
Escribe en un archivo el orden de las divisiones realizadas en el diseño actual. Esto es útil para recrear el orden de las regiones utilizadas en el diseño actual. Solo se registra el diseño actual. Si bien se registra el orden de las regiones, no se registra el tamaño de esas regiones ni qué ventanas corresponden a qué regiones. Si no se especifica un nombre de archivo, el valor predeterminado es layout-dump, guardado en el directorio donde se inició el proceso de screen. Si el archivo ya existe, layout dump lo agregará al final. Por ejemplo:
C-a : layout dump /home/user/.screenrc
guardará o agregará el diseño al archivo .screenrc del usuario.
license
Muestra la página de exención de responsabilidad. Esto se hace cada vez que se inicia screen sin opciones, lo que debería ser lo suficientemente frecuente. Consulte también el comando startup_message.
lockscreen
Bloquea esta pantalla. Llama a un programa de bloqueo de pantalla. Screen no acepta ninguna tecla de comando hasta que finalice este programa. Mientras tanto, los procesos en las ventanas pueden continuar, ya que las ventanas están en el estado detached. El programa de bloqueo de pantalla se puede cambiar a través de la variable de entorno $LOCKPRG (que debe establecerse en el shell desde el que se inicia screen) y se ejecuta con el uid y gid del usuario.
Advertencia: cuando deja otros shells desbloqueados y no ha establecido una contraseña en screen, el bloqueo no tiene sentido: uno podría reanexarse fácilmente desde un shell desbloqueado. Esta función debería llamarse más bien lockterminal.
log [on | off]
Comienza o detiene la escritura de la salida de la ventana actual en un archivo llamado screenlog.n en el directorio predeterminado de la ventana, donde n es el número de la ventana actual. Este nombre de archivo se puede cambiar con el comando logfile. Si no se proporciona ningún parámetro, el estado del registro se alterna. El registro de sesión se agrega al contenido anterior del archivo si ya existe. El contenido actual y el contenido del historial de desplazamiento no se incluyen en el registro de sesión. El valor predeterminado es off.
logfile filename
logfile flush secs
Define el nombre que tendrán los archivos de registro. El valor predeterminado es screenlog.%n. La segunda forma cambia el número de segundos que screen esperará antes de vaciar el búfer del archivo de registro en el sistema de archivos. El valor predeterminado es de 10 segundos.
login [on | off]
Agrega o elimina la entrada en la base de datos de archivos utmp para la ventana actual. Esto controla si la ventana está "conectada". Cuando no se proporciona ningún parámetro, el estado de inicio de sesión de la ventana se alterna. Además de este cambio, es conveniente tener un comando "iniciar sesión" y un comando "cerrar sesión". Por ejemplo, bind I login on y bind O login off asignarán estas teclas a C-a I y C-a O. La configuración predeterminada (en config.h.in) debe ser on para una pantalla que se ejecuta con suid-root. Use el comando deflogin para cambiar el estado de inicio de sesión predeterminado para las ventanas nuevas. Ambos comandos solo están presentes cuando screen se ha compilado con soporte utmp.
logtstamp [on|off]
logtstamp after [secs]
logtstamp string
[string]
Este comando controla el mecanismo de marca de tiempo del archivo de registro de screen. Si las marcas de tiempo están activadas, screen agrega una cadena que contiene la hora actual al archivo de registro después de dos minutos de inactividad. Cuando la salida continúa y han pasado más de dos minutos, se agrega una segunda marca de tiempo para documentar el reinicio de la salida. Puede cambiar este tiempo de espera con la segunda forma del comando. La tercera forma se utiliza para personalizar la cadena de marca de tiempo (-- %n:%t -- timestamp -%M/%d/%y %c:%s --\n por defecto).
mapdefault
Indica a screen que el siguiente carácter de entrada solo debe buscarse en la tabla de enlace de teclas predeterminada. Consulte bindkey.
mapnotnext
Similar a mapdefault, pero ni siquiera busca en la tabla de enlace de teclas predeterminada.
maptimeout [timeout]
Establece el temporizador de intervalo entre caracteres para la detección de secuencias de entrada en un tiempo de espera de timeout ms. El tiempo de espera predeterminado es de 300 ms. Maptimeout sin argumentos muestra la configuración actual. Consulte bindkey.
markkeys string
Este es un método para cambiar el mapa de teclas utilizado para el modo de copia/historial. La cadena está formada por pares oldchar=newchar que están separados por ':'. Ejemplo: La cadena B=^B:F=^F cambiará las teclas C-b y C-f a la vinculación de estilo vi (desplazamiento hacia arriba/abajo, página completa). Por casualidad, esta es la vinculación predeterminada para B y F. El comando markkeys h=^B:l=^F:$=^E establecería el modo para una vinculación de estilo emacs. Si su terminal envía caracteres que hacen que interrumpa el modo de copia, este comando puede ayudar al asignar estos caracteres para que no hagan nada. El carácter nulo es @ y se utiliza de la siguiente manera: markkeys @=L=H si no desea usar los comandos H o L ya. Como se muestra en este ejemplo, se pueden asignar varias teclas a una función en una sola declaración.
maxwin num
Establece el número máximo de ventanas que la pantalla creará. No afecta a las ventanas ya existentes. El número solo puede aumentarse cuando no haya ventanas existentes.
meta
Inserta el carácter de comando (C-a) en la secuencia de entrada de la ventana actual.
monitor [ on | off ]
Activa o desactiva el monitoreo de actividad de las ventanas. Cuando el monitoreo está activado y una ventana afectada se cambia al fondo, recibirá el mensaje de notificación de actividad en la línea de estado en el primer signo de salida y la ventana también se marcará con una '@' en la visualización del estado de la ventana. El monitoreo está inicialmente desactivado para todas las ventanas.
mousetrack [ on | off ]
Este comando determina si screen vigilará los clics del mouse. Cuando este comando está habilitado, las regiones que se han dividido de varias maneras se pueden seleccionar apuntando a ellas con el mouse y haciendo clic con el botón izquierdo. Sin especificar on o off, se muestra el estado actual. El estado predeterminado lo determina el comando defmousetrack.
msgminwait sec
Define el tiempo que screen retrasa un nuevo mensaje cuando se muestra actualmente un mensaje. El valor predeterminado es de 1 segundo.
msgwait sec
Define el tiempo que se muestra un mensaje si screen no se ve perturbado por otra actividad. El valor predeterminado es de 5 segundos.
multiuser [ on | off ]
Cambia entre el modo de un solo usuario y el modo de múltiples usuarios. El funcionamiento estándar de screen es el modo de un solo usuario. En el modo de múltiples usuarios, los comandos acladd, aclchg, aclgrp y acldel se pueden utilizar para habilitar (y deshabilitar) que otros usuarios accedan a esta sesión de screen.
nethack [ on | off ]
Cambia el tipo de mensajes de error utilizados por screen. Si está familiarizado con el juego nethack, es posible que disfrute de los mensajes de estilo nethack, que a menudo difuminan los hechos un poco, pero son mucho más divertidos de leer. De todos modos, los mensajes estándar a menudo tienden a ser poco claros. Esta opción solo está disponible si screen se compiló con la bandera NETHACK definida. La configuración predeterminada se determina entonces mediante la presencia de la variable de entorno $NETHACKOPTIONS y el archivo ~/.nethackrc; si existe alguno de ellos, el valor predeterminado es on.
next
Cambia a la siguiente ventana. Este comando se puede utilizar repetidamente para recorrer la lista de ventanas.
nonblock [ on | off | numsecs ]
Indica a screen cómo tratar las interfaces de usuario (pantallas) que dejan de aceptar salida. Esto puede suceder si un usuario presiona ^S o se interrumpe una conexión TCP/módem pero no se recibe una señal de desconexión. Si nonblock está desactivado (este es el valor predeterminado), screen espera hasta que la pantalla vuelva a aceptar la salida. Si nonblock está activado, screen espera hasta que se alcance el tiempo de espera (on se trata como 1s). Si la pantalla aún no recibe caracteres, screen la considerará bloqueada y dejará de enviar caracteres a ella. Si en algún momento vuelve a aceptar caracteres, screen desbloqueará la pantalla y volverá a mostrar el contenido actualizado de la ventana.
number [[+|-]n]
Cambia el número de la ventana actual. Si el número n especificado ya está en uso por otra ventana, ambas ventanas intercambian sus números. Si no se especifica ningún argumento, se muestra el número (y el título) de la ventana actual. Usar +' o-' cambiará el número de la ventana por la cantidad relativa especificada.
obuflimit [límite]
Si el búfer de salida contiene más bytes que el límite especificado, no se leerán más datos de las ventanas. El valor predeterminado es 256. Si tienes una pantalla rápida (como xterm), puedes configurarlo a un valor más alto. Si no se especifica ningún argumento, se muestra la configuración actual.
only
Elimina todas las regiones excepto la actual.
other
Cambia a la ventana que se mostraba anteriormente. Si esta ventana ya no existe, other tiene el mismo efecto que next.
partial [on | off]
Define si la pantalla debe actualizarse (como con redisplay) después de cambiar a la ventana actual. Este comando solo afecta a la ventana actual. Para afectar inmediatamente a todas las ventanas, usa el comando allpartial. El valor predeterminado es off, por supuesto. Este valor predeterminado está fijado, ya que actualmente no existe el comando defpartial.
password [contraseña_cifrada]
Presenta una contraseña cifrada en tu archivo .screenrc y screen la solicitará cada vez que alguien intente reanudar una sesión desconectada. Esto es útil si tienes programas con privilegios en ejecución bajo screen y deseas proteger tu sesión contra intentos de reconexión por parte de otro usuario que se haga pasar por tu ID de usuario (es decir, cualquier superusuario). Si no se especifica una contraseña cifrada, screen solicita que se escriba la contraseña dos veces y la coloca en el búfer de pegado. El valor predeterminado es none, lo que deshabilita la verificación de contraseñas.
paste [registros [reg_destino]]
Escribe el contenido (concatenado) de los registros especificados en la cola de entrada estándar de la ventana actual. El registro . se trata como el búfer de pegado. Si no se proporciona ningún parámetro, se le pide al usuario que ingrese un solo registro para pegar. El búfer de pegado se puede llenar con los comandos copy, history y readbuf. Otros registros se pueden llenar con los comandos register, readreg y paste. Si paste se llama con un segundo argumento, el contenido de los registros especificados se pega en el registro de destino con nombre en lugar de en la ventana. Si se usa . como segundo argumento, el búfer de pegado de la pantalla es el destino. Ten en cuenta que paste utiliza una gran variedad de recursos: siempre que se especifique un segundo argumento, no se necesita la ventana actual. Cuando la especificación de origen solo contiene registros (no el búfer de pegado), no es necesario que haya una pantalla (terminal adjunta) actual, ya que los registros son un recurso global. El búfer de pegado existe una vez para cada usuario.
pastefont [on | off]
Indica a screen que incluya información de fuente en el búfer de pegado. El valor predeterminado es no hacerlo. Este comando es especialmente útil para fuentes multicarácter como los caracteres kanji.
pow_break
Vuelve a abrir la línea de terminal de la ventana y envía una condición de interrupción. Consulte `break'.
pow_detach
Desconexión forzada. Principalmente lo mismo que detach, pero también envía una señal HANGUP al proceso padre de screen. PRECAUCIÓN: Esto resultará en una desconexión cuando screen se haya iniciado desde su shell de inicio de sesión.
pow_detach_msg [mensaje]
El mensaje especificado aquí se muestra cada vez que se realiza una `desconexión forzada'. Se puede utilizar como un reemplazo de un mensaje de desconexión o para restablecer la velocidad de transmisión, etc. Sin parámetro, se muestra el mensaje actual.
prev
Cambia a la ventana con el siguiente número inferior. Este comando se puede usar repetidamente para recorrer la lista de ventanas.
printcmd [cmd]
Si cmd no es una cadena vacía, screen no utilizará las capacidades de terminal po/pf si detecta una secuencia de impresión ANSI ESC [ 5 i, sino que canalizará la salida a cmd. Esto normalmente debería ser un comando como lpr o printcmd. Sin un comando, se muestra la configuración actual. La secuencia ANSI ESC [ 4 i finaliza la impresión y cierra la canalización.
Advertencia: ¡Tenga cuidado con este comando! Si otros usuarios tienen acceso de escritura a su terminal,
podrán ejecutar comandos de impresión.
process [key]
Inserta el contenido del registro especificado en la cola de entrada de screen. Si no se proporciona ningún argumento, se le pedirá que introduzca el nombre de un registro. El texto se analiza como si se hubiera escrito desde el teclado del usuario. Este comando se puede usar para enlazar varias acciones a una sola tecla.
quit
Cierra todas las ventanas y termina screen. Tenga en cuenta que en los terminales de estilo VT100, las teclas C-4 y C-\ son idénticas. Esto hace que los enlaces predeterminados sean peligrosos: tenga cuidado de no escribir C-a C-4 cuando seleccione la ventana n.º 4. Utilice el comando bind vacío (por ejemplo, bind '^\') para eliminar un enlace de tecla.
readbuf [codificación] [nombre de archivo]
Lee el contenido del archivo especificado en el búfer de pegado. Puede indicar a screen la codificación del archivo mediante la opción -e. Si no se especifica ningún archivo, se utiliza el nombre de archivo screen-exchange. Consulte también el comando bufferfile.
readreg [codificación] [registro [nombre de archivo]]
Hace una de dos cosas, según el número de argumentos: con cero o un argumento, duplica el contenido del búfer de pegado en el registro especificado o introducido en el aviso. Con dos argumentos, lee el contenido del archivo con el nombre especificado en el registro, tal como readbuf lee el archivo screen-exchange en el búfer de pegado. Puede indicar a screen la codificación del archivo mediante la opción -e. El siguiente ejemplo pegará el archivo de contraseñas del sistema en la ventana de screen (manteniendo una copia en el registro p):
C-a : readreg p /etc/passwd
C-a : paste p
redisplay
Vuelve a mostrar la ventana actual. Necesario para obtener una actualización completa cuando se está en modo de redibujo parcial.
register [-eencoding]key-string
Guarda la cadena especificada en el registro de la clave. La codificación de la cadena se puede especificar mediante la opción -e. Consulte también el comando paste.
remove
Elimina la región actual. No tiene efecto si solo hay una región.
removebuf
Desvincula el archivo de intercambio de pantalla utilizado por los comandos writebuf y readbuf.
rendition [ bell | monitor | silence | so ] attr [ color ]
Cambia la forma en que screen renderiza los títulos de las ventanas que tienen las marcas monitor o bell establecidas en caption o hardstatus o windowlist. Consulte el capítulo ESCAPES DE CADENA para obtener la sintaxis de los modificadores. El valor predeterminado para monitor es actualmente =b (negrita, colores activos), para bell =ub (subrayado, negrita y colores activos) y =u para silence.
reset
Restablece la terminal virtual a sus valores de inicio. Útil cuando quedan configuraciones extrañas (como regiones de desplazamiento o conjunto de caracteres gráficos) de una aplicación.
resize [-h|-v|-b|-l|-p] [[+|-] n[%] |=|max|min|_|0]
Cambia el tamaño de la región actual. El espacio se eliminará o agregará a las regiones circundantes según el orden de las divisiones. Las opciones disponibles para cambiar el tamaño son '-h'(horizontal), '-v'(vertical), '-b'(ambos), '-l'(local a la capa) y '-p'(perpendicular). Los cambios de tamaño horizontales agregarán o eliminarán ancho a una región, los verticales agregarán o eliminarán altura, y ambos agregarán o eliminarán tamaño en ambas dimensiones. Local y perpendicular son similares a horizontal y vertical, pero tienen en cuenta cómo se dividió una región. Si la última división de una región fue horizontal, un cambio de tamaño local funcionará como un cambio de tamaño vertical. Si la última división de una región fue vertical, un cambio de tamaño local funcionará como un cambio de tamaño horizontal. Los cambios de tamaño perpendiculares funcionan de manera opuesta a los cambios de tamaño locales.
Si no se especifica ninguna opción, local es el valor predeterminado.
La cantidad de líneas a agregar o eliminar se puede expresar de varias maneras diferentes. Especificar un número n por sí solo cambiará el tamaño de la región por esa cantidad absoluta. Puede especificar una cantidad relativa prefijando un signo más + o menos - a la cantidad, como agregar +n líneas o eliminar -n líneas. El cambio de tamaño también se puede expresar como un porcentaje absoluto o relativo agregando un signo de porcentaje %. Usar cero 0 es sinónimo de min y usar un guion bajo _ es sinónimo de max.
Algunos ejemplos son:
resize +N
aumenta la región actual en N
resize -N
disminuye la región actual en N
resize N
establece la región actual en N
resize 20%
establece la región actual en el 20% del tamaño original
resize +20%
aumenta la región actual en un 20%
resize -b =
hace que todas las ventanas tengan el mismo tamaño
resize max
maximiza la región actual
resize min
minimiza la región actual
Sin ningún argumento, screen solicitará cómo le gustaría cambiar el tamaño de la región actual.
Consulte focusminsize si desea restringir el tamaño mínimo que puede tener una región.
screen [-opts] [n] [cmd [args]|//group]
Establece una nueva ventana. Las opciones de control de flujo (-f, -fn y -fa), el título (también conocido como a) con la opción (-t), las opciones de inicio de sesión (-l y -ln), la opción de tipo de terminal (-T <term>), la opción de bandera de todas las capacidades (-a) y la opción de retroceso (-h <num>) se pueden especificar con cada comando. La opción (-M) activa el monitoreo para esta ventana. La opción (-L) activa el registro de salida para esta ventana. Si se proporciona un número opcional n en el rango 0..MAXWIN-1, se asigna el número de ventana n a la ventana recién creada (o, si este número ya está en uso, se asigna el siguiente número disponible). Si se especifica un comando después de screen, este comando (con los argumentos dados) se inicia en la ventana; de lo contrario, se crea un shell. Si se proporciona //group, se crea una ventana de tipo contenedor en la que se pueden crear otras ventanas.
Por lo tanto, si su archivo .screenrc contiene las líneas
# ejemplo para .screenrc:
screen 1
screen -fn -t foobar -L 2 telnet foobar
screen crea una ventana de shell (en la ventana #1) y una ventana con una conexión TELNET a la máquina foobar (sin control de flujo, con el título foobar en la ventana #2) y escribirá un archivo de registro (screenlog.2) de la sesión telnet. Tenga en cuenta que, a diferencia de las versiones anteriores de screen, no se crea ninguna ventana predeterminada adicional cuando se incluyen comandos de screen en su archivo .screenrc. Cuando se completa la inicialización, screen cambia a la última ventana especificada en su archivo .screenrc o, si no hay ninguna, abre una ventana predeterminada #0.
Screen tiene incorporada cierta funcionalidad de cu y telnet. Consulte también el capítulo TIPOS DE VENTANAS.
scrollback num
Establece el tamaño del búfer de retroceso para las ventanas actuales en num líneas. El retroceso predeterminado es de 100 líneas. Consulte también el comando defscrollback y use info para ver la configuración actual. Para acceder y utilizar el contenido del búfer de retroceso, utilice el comando copy.
select [WindowID]
Cambia a la ventana identificada por WindowID. Este puede ser un prefijo del título de la ventana (nombre de ventana alfanumérico) o un número de ventana. El parámetro es opcional y, si se omite, se le pedirá que proporcione un identificador. Cuando se establece una nueva ventana, se asigna el primer número disponible a esta ventana. Por lo tanto, la primera ventana se puede activar mediante select 0. El número de ventanas está establecido por el parámetro de configuración MAXWIN (que por defecto es 100), pero se puede cambiar mediante el comando `maxwin'. Hay dos WindowID especiales: - selecciona la ventana interna en blanco y . selecciona la ventana actual. Este último es útil si se utiliza con la opción -X de screen.
sessionname [name]
Cambia el nombre de la sesión actual. Tenga en cuenta que, para screen -list, el nombre aparece con el ID de proceso precediéndolo. Si se omite el argumento name, se muestra el nombre de esta sesión. Precaución: las variables de entorno $STY seguirán reflejando el nombre anterior en los shells preexistentes. Esto puede generar confusión. El uso de este comando generalmente no se recomienda. Utilice la opción de línea de comandos -S si desea nombrar una nueva sesión. El valor predeterminado se construye a partir de los nombres de tty y host.
setenv [var [string]]
Establece la variable de entorno `var` al valor `string`. Si solo se especifica `var`, se le pedirá al usuario que introduzca un valor. Si no se especifican parámetros, se le pedirá al usuario que introduzca tanto la variable como el valor. El entorno se hereda de todos los shells que se creen posteriormente.
setsid [ on | off ]
Normalmente, `screen` utiliza sesiones y grupos de procesos diferentes para las ventanas. Si `setsid` se desactiva, esto ya no se hará y todas las ventanas estarán en el mismo grupo de procesos que el proceso principal de `screen`. Esto también interrumpe el control de trabajos, así que tenga cuidado. El valor predeterminado es `on`, por supuesto. Este comando probablemente solo sea útil en circunstancias inusuales.
shell command
Establece el comando que se utilizará para crear un nuevo shell. Esto anula el valor de la variable de entorno `$SHELL`. Esto es útil si desea ejecutar un potenciador de terminal que espera ejecutar el programa especificado en `$SHELL`. Si el comando comienza con un carácter '-', el shell se iniciará como un shell de inicio de sesión. Los shells típicos solo realizan una inicialización mínima cuando no se inician como un shell de inicio de sesión. Por ejemplo, Bash no leerá su `~/.bash_profile` a menos que sea un shell de inicio de sesión.
shelltitle title
Establece el título para todos los shells creados durante el inicio o mediante el comando C-A C-c. Para obtener más detalles sobre qué es un título, consulte la sección titulada TITLES (nombres de las ventanas).
silence [ on | off | sec ]
Activa o desactiva el monitoreo de inactividad de las ventanas. Cuando el monitoreo de inactividad se activa y una ventana afectada se cambia al fondo, recibirá el mensaje de notificación de inactividad en la línea de estado después de un período de inactividad especificado. El tiempo de espera predeterminado se puede cambiar con el comando `silencewait` o especificando un número de segundos en lugar de `on` o `off`. El monitoreo de inactividad está inicialmente desactivado para todas las ventanas.
silencewait sec
Define el tiempo que todas las ventanas que se supervisan para detectar inactividad deben esperar antes de mostrar un mensaje. El valor predeterminado es de 30 segundos.
sleep num
Este comando pausará la ejecución de un archivo `.screenrc` durante `num` segundos. La actividad del teclado finalizará el tiempo de espera. Se puede utilizar para dar a los usuarios la oportunidad de leer los mensajes que se muestran con `echo`.
slowpaste msec
Define la velocidad a la que se inserta texto en la ventana actual mediante el comando de pegar ("C-a ]"). Si el valor de `slowpaste` no es cero, el texto se escribe carácter por carácter. `screen` realizará una pausa de `msec` milisegundos después de escribir cada carácter individual para permitir que la aplicación procese su entrada. Solo utilice `slowpaste` si su sistema subyacente presenta problemas de control de flujo al pegar grandes cantidades de texto.
sort
Ordena las ventanas en orden alfabético de los títulos de las ventanas.
source file
Lee y ejecuta comandos desde el archivo `file`. Los comandos source se pueden anidar hasta un máximo de diez niveles de recursión. Si `file` no es una ruta absoluta y `screen` ya está procesando un comando source, el directorio principal del archivo del comando source que se está ejecutando se utiliza para buscar el nuevo archivo de comandos antes de que `screen` utilice su directorio actual.
Tenga en cuenta que los comandos termcap/terminfo/termcapinfo solo funcionan al inicio y al reanexarse, por lo que deben alcanzarse a través de los archivos screenrc predeterminados para que tengan efecto.
sorendition [attr[color]]
Este comando está en desuso. Consulte "rendition so" en su lugar.
split[-v]
Divide la región actual en dos nuevas. Todas las regiones de la pantalla se redimensionan para dejar espacio
para la nueva región. La ventana en blanco se muestra en la nueva región. Por defecto, se crea una
división horizontal, colocando las nuevas regiones en la parte superior e inferior una de la otra. Al usar -v, se
creará una división vertical, lo que hará que las nuevas regiones aparezcan una al lado de la otra. Use los comandos remove o only para eliminar regiones. Use focus para alternar entre regiones.
Cuando una región se divide de la manera opuesta a como se dividió previamente (es decir, vertical y luego horizontal o horizontal y luego vertical), se crea una nueva capa. La capa se utiliza para agrupar las regiones que se dividen de la misma manera. Normalmente, como usuario, no debería ver ni tener que preocuparse por las capas, pero afectarán la forma en que algunos comandos (focus y resize) se comportan.
Con la implementación actual de screen, los datos que se desplazan aparecerán mucho más lentamente en una región dividida verticalmente que en una que no lo esté. Esto debe tenerse en cuenta si necesita usar comandos del sistema como cat o tail -f.
startup_message [on | off]
Seleccione si desea ver el aviso de derechos de autor durante el inicio. El valor predeterminado es "on", como probablemente haya notado.
status [top | up | down | bottom] [left | right]
La ventana de estado está, por defecto, en la esquina inferior izquierda. Este comando puede mover los mensajes de estado a cualquier esquina de la pantalla. top es lo mismo que up, down es lo mismo que bottom.
stuff [string]
Inserte la cadena string en el búfer de entrada de la ventana actual. Esto es similar al comando paste, pero con mucha menos sobrecarga. Sin un parámetro, screen solicitará una cadena para insertar. No puede pegar búferes grandes con el comando stuff. Es más útil para las vinculaciones de teclas. Consulte también bindkey.
su [nombredeusuario [contraseña [contraseña2]]]
Sustituya el usuario de una pantalla. El comando solicita todos los parámetros que se omiten. Si las contraseñas se especifican como parámetros, deben especificarse sin cifrar. La primera contraseña se compara con la base de datos passwd del sistema, la segunda contraseña se compara con la contraseña de screen establecida con los comandos acladd o password. Su puede ser útil para que el administrador de screen pruebe configuraciones de múltiples usuarios. Cuando la identificación falla, el usuario tiene acceso a los comandos disponibles para el usuario nobody. Estos son detach, license, version, help y displays.
suspend
Suspenda screen. Las ventanas están en el estado "detached", mientras screen está suspendido. Esta función depende de que el shell pueda realizar el control de trabajos.
term term
En el entorno de cada ventana que screen abre, la variable $TERM se establece en screen de forma predeterminada. Pero cuando no hay una descripción para screen instalada en la base de datos termcap o terminfo local, establece $TERM a, digamos, vt100. Esto no causará muchos problemas, ya que screen es compatible con VT100/ANSI. El uso de el comando term se desaconseja para fines distintos al predeterminado. Es decir, es posible que desee especificar configuraciones $TERM especiales (por ejemplo, vt100) para el siguiente comando screen rlogin othermachine. Use el comando screen -T vt100 rlogin othermachine en lugar de establecer y restablecer el valor predeterminado.
termcap term terminal-tweaks[window-tweaks]
terminfo term terminal-tweaks[window-tweaks]
termcapinfo term terminal-tweaks[window-tweaks]
Utilice este comando para modificar la entrada termcap de su terminal sin tener que pasar por todos los inconvenientes que implica crear una entrada termcap personalizada. Además, puede personalizar opcionalmente el termcap generado para las ventanas. Debe colocar estos comandos en uno de los archivos de inicio de screen, ya que no tienen sentido una vez que el emulador de terminal se ha iniciado.
Si su sistema utiliza la base de datos terminfo en lugar de termcap, screen comprenderá el comando terminfo', que tiene los mismos efectos que el comandotermcap'. Se proporcionan dos comandos separados, ya que existen sutiles diferencias sintácticas, por ejemplo, cuando se requiere la interpolación de parámetros (utilizando %'). Tenga en cuenta que los nombres termcap de las capacidades deben utilizarse con el comandoterminfo'.
En muchos casos, cuando los argumentos son válidos tanto en la sintaxis terminfo como en la de termcap, puede utilizar el comando termcapinfo', que es simplemente una abreviatura de un par de comandostermcap' y `terminfo' con argumentos idénticos.
El primer argumento especifica qué terminal(es) deben verse afectados por esta definición. Puede especificar varios nombres de terminal separándolos con |. Utilice * para que coincida con todos los terminales y vt* para que coincida con todos los terminales que comienzan con vt.
Cada argumento tweak contiene una o más definiciones termcap (separadas por :) que se insertarán al principio de la entrada termcap apropiada, mejorándola o anulando los valores existentes. El primer tweak modifica el termcap de su terminal y contiene definiciones que su terminal utiliza para realizar ciertas funciones. Especifique una cadena nula para dejarlo sin cambios (por ejemplo, ''). El segundo (opcional) tweak modifica todos los termcaps de las ventanas y debe contener definiciones que screen entienda (consulte la sección VIRTUAL TERMINAL).
Algunos ejemplos:
termcap xterm* LP:hs@
Informa a screen que todos los terminales que comienzan con xterm' tienen márgenes automáticos firmes que permiten actualizar la última posición de la pantalla (LP), pero en realidad no tienen una línea de estado (no 'hs' - agregue@' para desactivar las entradas). Tenga en cuenta que asumimos `LP' para todos los nombres de terminal que comienzan con vt, pero solo si no especifica un comando termcap para ese terminal.
termcap vt* LP
termcap vt102|vt220 Z0=\E[?3h:Z1=\E[?3l
Especifica la capacidad de márgenes firmes LP' para todos los terminales que comienzan convt', y la segunda línea también agregará las secuencias de escape para cambiar al modo de 132 caracteres por línea (Z0) y volver a salir de él (Z1) si se trata de un VT102 o VT220. (Debe especificar Z0 y Z1 en su termcap para usar los comandos de cambio de ancho).
termcap vt100 "" l0=PF1:l1=PF2:l2=PF3:l3=PF4
Esto deja la entrada de termcap de tu vt100 intacta y agrega las etiquetas de las teclas de función a cada entrada de termcap de la ventana.
termcap h19|z19 am@:im=\E@:ei=\EO dc=\E[P
Toma una entrada de termcap h19 o z19 y desactiva los márgenes automáticos (am@) y habilita las capacidades de modo de inserción (im) y fin de inserción (ei) (el @' en la cadenaim' está después del =, por lo que es parte de la cadena). Tener las definiciones im' yei' en el termcap de tu terminal hará que screen anuncie automáticamente la capacidad de inserción de caracteres en la entrada de termcap de cada ventana. Cada ventana también tendrá la capacidad de eliminación de caracteres (dc) agregada a su termcap, lo que screen traducirá a una actualización de línea para el terminal (estamos simulando que no admite la eliminación de caracteres).
Si deseas especificar completamente la entrada de termcap de cada ventana, deberías establecer la variable $SCREENCAP antes de ejecutar screen. Consulta la discusión sobre el TERMINAL VIRTUAL en este manual y la página del manual termcap(5) para obtener más información sobre las definiciones de termcap.
time [cadena]
Utiliza la línea de mensajes para mostrar la hora del día, el nombre del host y los promedios de carga de 1, 5 y 15 minutos (si esto está disponible en tu sistema). Para obtener información específica de la ventana, utiliza info.
Si se especifica una cadena, cambia el formato del informe de tiempo como se describe en el capítulo ESCAPES DE CADENA. Screen utiliza un valor predeterminado de "%c:%s %M %d %H%? %l%?".
title [títuloventana]
Establece el nombre de la ventana actual en títuloventana. Si no se especifica ningún nombre, screen solicita uno. Este comando se conocía como `aka' en versiones anteriores.
unbindall
Desvincula todas las vinculaciones. Esto puede ser útil cuando screen se utiliza únicamente para sus capacidades de desconexión, como cuando se permite que una aplicación de consola se ejecute como un daemon. Si, por alguna razón, es necesario vincular comandos después de esto, utiliza 'screen -X'.
unsetenv var
Elimina una variable de entorno.
utf8 [ activado | desactivado [ activado | desactivado ]]
Cambia la codificación utilizada en la ventana actual. Si utf8 está activado, las cadenas enviadas a la ventana se codificarán en UTF-8 y viceversa. Omitir el parámetro alterna la configuración. Si se proporciona un segundo parámetro, también se cambia la codificación de la pantalla (esto se debe hacer con la opción -U de screen). Consulta también defutf8, que cambia la configuración predeterminada de una nueva ventana.
vbell [ activado | desactivado ]
Establece la configuración de campana visual para esta ventana. Omitir el parámetro alterna la configuración. Si vbell está activado, pero tu terminal no admite una campana visual, se muestra un mensaje-de-campana-visual' en la línea de estado cuando se recibe el carácter de campana (^G). El soporte de campana visual de un terminal se define mediante la variable de termcapvb' (terminfo: 'flash').
Por defecto, vbell está desactivado, por lo tanto se utiliza la señal audible. Véase también `bell_msg'.
vbell_msg [mensaje]
Establece el mensaje de la señal visual. El mensaje se imprime en la línea de estado si la ventana recibe un carácter de señal (^G), vbell está configurado en on, pero el terminal no soporta una señal visual. El mensaje por defecto es Wuff, Wuff!!. Sin un parámetro, se muestra el mensaje actual.
vbellwait sec
Define un retardo en segundos después de cada visualización del mensaje de señal visual de la pantalla. El valor por defecto es 1 segundo.
verbose [ on | off ]
Si verbose está activado, el nombre del comando se muestra cada vez que se crea una ventana (o se recupera de un estado de "zombie"). El valor por defecto es off. Sin un parámetro, se muestra la configuración actual.
version
Muestra la versión actual y la fecha de compilación en la línea de estado.
wall mensaje
Escribe un mensaje a todas las pantallas. El mensaje aparecerá en la línea de estado del terminal.
width [-w|-d] [cols [lines]]
Alterna el ancho de la ventana entre 80 y 132 columnas o lo establece en cols columnas si se especifica un argumento. Esto requiere un terminal capaz y las entradas termcap Z0 y Z1. Consulte el comando termcap para obtener más información. También puede especificar una nueva altura si desea cambiar ambos valores. La opción -w indica a screen que deje el tamaño de la pantalla sin cambios y simplemente establezca el tamaño de la ventana, -d viceversa.
windowlist [ -b ] [ -m ] [ -g ]
windowlist string [string]
windowlist title [title]
Muestra todas las ventanas en una tabla para la selección visual de ventanas. Si screen estaba en un grupo de ventanas, screen saldrá del grupo y luego mostrará las ventanas en ese grupo. Si se proporciona la opción -b, screen cambiará a la ventana en blanco antes de presentar la lista, de modo que la ventana actual también sea seleccionable. La opción -m cambia el orden de las ventanas, en lugar de ordenar por números de ventana, screen utiliza su lista interna de uso más reciente. La opción -g mostrará las ventanas dentro de cualquier grupo en ese nivel y hacia abajo.
Las siguientes teclas se utilizan para navegar en windowlist:
k, C-p, o arriba Mueve una línea hacia arriba.
j, C-n, o abajo Mueve una línea hacia abajo.
C-g o escape Sale de windowlist.
C-a o home Mueve a la primera línea.
C-e o end Mueve a la última línea.
C-u o C-d Mueve media página hacia arriba o hacia abajo.
C-b o C-f Mueve una página completa hacia arriba o hacia abajo.
.9 Usando las teclas numéricas, mueve a la línea seleccionada.
mouseclick Mueve a la línea seleccionada. Disponible cuando mousetrack está configurado en on
/ Busca.
n Repite la búsqueda en la dirección hacia adelante.
N Repite la búsqueda en la dirección hacia atrás.
m Alterna MRU.
g Alterna la anidación de grupos.
a Vista de todas las ventanas.
C-h o retroceso Sale del grupo.
, Cambia los números con la ventana anterior.
. Cambia los números con la ventana siguiente.
K Elimina esa ventana.
espacio o enter Selecciona esa ventana.
El formato de la tabla se puede cambiar con la opción de cadena y título; el título se muestra como encabezado de la tabla, mientras que las líneas se crean utilizando la configuración de cadena. La configuración predeterminada es Num Name%=Flags para el título y %3n %t%=%f para las líneas. Consulte el capítulo ESCAPES DE CADENA para obtener más códigos (por ejemplo, configuración de color).
Windowlist necesita un tamaño de región de al menos 10 caracteres de ancho y 6 caracteres de alto para mostrarse.
windows [ cadena ]
Utiliza la línea de mensajes para mostrar una lista de todas las ventanas. Cada ventana se enumera por número con el nombre del proceso que se ha iniciado en la ventana (o su título); la ventana actual está marcada con un `*'; la ventana anterior está marcada con un `-'; todas las ventanas en las que se ha iniciado sesión están marcadas con un `$'; una ventana en segundo plano que ha recibido una señal acústica está marcada con un `!'; una ventana en segundo plano que se está supervisando y que ha tenido actividad está marcada con un `@'; una ventana que tiene el registro de salida activado está marcada con `(L)'; las ventanas ocupadas por otros usuarios están marcadas con `&'; las ventanas en estado zombi están marcadas con `Z'. Si esta lista es demasiado larga para caber en la línea de estado del terminal, solo se muestra la porción alrededor de la ventana actual. El parámetro de cadena opcional sigue el formato ESCAPES DE CADENA. Si se pasa un parámetro de cadena, el tamaño de la salida es ilimitado. El comando predeterminado sin ningún parámetro está limitado a un tamaño de 1024 bytes.
wrap [ on | off ]
Establece la configuración de salto de línea para la ventana actual. Cuando el salto de línea está activado, el segundo carácter imprimible consecutivo que se muestra en la última columna de una línea se moverá al inicio de la siguiente línea. Como característica adicional, la tecla de retroceso (^H) también se moverá a través del margen izquierdo a la línea anterior. El valor predeterminado es `on'. Sin ninguna opción, el estado de salto de línea se alterna.
writebuf [-e encoding] [nombre de archivo]
Escribe el contenido del búfer de pegado en el archivo especificado o en el archivo de intercambio público accesible si no se proporciona ningún nombre de archivo. Esto se considera un medio primitivo de comunicación entre los usuarios de screen en el mismo host. Si se especifica una codificación, el búfer de pegado se vuelve a codificar sobre la marcha para que coincida con la codificación. El nombre de archivo se puede establecer con el comando bufferfile y, por defecto, es /tmp/screen-exchange.
writelock [ on | off | auto]
Además de las listas de control de acceso, no todos los usuarios pueden escribir en la misma ventana al mismo tiempo. Por defecto, writelock está en modo `auto' y otorga permiso de entrada exclusivo al usuario que es el primero en cambiar a la ventana particular. Cuando sale de la ventana, otros usuarios pueden obtener el writelock (automáticamente). El writelock de la ventana actual se deshabilita con el comando writelock off. Si el usuario emite el comando writelock on, mantiene el permiso de escritura exclusivo mientras cambia a otras ventanas.
xoff
xon
Inserta un carácter CTRL-s / CTRL-q en la cola de stdin de la ventana actual.
zmodem [ off | auto | catch | pass ]
zmodem sendcmd [string]
zmodem recvcmd [string]
Define el soporte de zmodem para screen. Screen entiende dos modos diferentes cuando detecta una solicitud zmodem: pass y catch. Si el modo está configurado en pass, screen retransmitirá todos los datos al attacher hasta que se alcance el final de la transmisión. En el modo catch, screen actúa como un punto final de zmodem y inicia los comandos rz/sz correspondientes. Si el modo está configurado en auto, screen utilizará catch si la ventana es un tty (por ejemplo, una línea serie), de lo contrario, utilizará pass.
Puede definir las plantillas que screen utiliza en el modo catch mediante la segunda y la tercera forma.
Tenga en cuenta también que esta es una función experimental.
zombie [keys[onerror]]
Por defecto, las ventanas de screen se eliminan de la lista de ventanas tan pronto como el proceso de la ventana (por ejemplo, shell) sale. Cuando se especifica una cadena de dos teclas para el comando zombie, las ventanas "muertas" permanecerán en la lista. El comando kill se puede utilizar para eliminar dicha ventana. Presionar la primera tecla en la ventana muerta tiene el mismo efecto. Al presionar la segunda tecla, screen intentará resucitar la ventana. El proceso que se estaba ejecutando inicialmente en la ventana se volverá a iniciar. Llamar a zombie sin parámetros borrará la configuración de zombie, lo que hará que las ventanas desaparezcan cuando su proceso salga.
Dado que la configuración de zombie se manipula globalmente para todas las ventanas, este comando probablemente debería llamarse defzombie, pero no lo es.
Opcionalmente, puede colocar la palabra onerror después de las teclas. Esto hará que screen monitoree el estado de salida del proceso que se ejecuta en la ventana. Si sale normalmente ('0'), la ventana desaparece. Cualquier otro valor de salida hace que la ventana se convierta en una zombie.
zombie_timeout[seconds]
Por defecto, las ventanas de screen se eliminan de la lista de ventanas tan pronto como el proceso de la ventana (por ejemplo, shell) sale. Si se definen las teclas zombie (compare con el comando zombie anterior), es posible establecer también un tiempo de espera cuando screen intenta volver a conectar automáticamente una ventana de screen muerta.
LA LÍNEA DE MENSAJES
Screen muestra mensajes informativos y otros diagnósticos en una línea de mensajes. Si bien esta línea está distribuida para aparecer en la parte inferior de la pantalla, se puede definir para que aparezca en la parte superior de la pantalla durante la compilación. Si su terminal tiene una línea de estado definida en su termcap, screen utilizará esto para mostrar sus mensajes; de lo contrario, una línea de la pantalla actual se sobrescribirá temporalmente y la salida se interrumpirá momentáneamente. La línea de mensajes se elimina automáticamente después de un breve retraso, pero también se puede eliminar antes de tiempo (en terminales sin una línea de estado) comenzando a escribir.
La instalación de la línea de mensajes puede ser utilizada por una aplicación que se ejecuta en la ventana actual mediante la secuencia de control de privacidad ANSI. Por ejemplo, desde el shell, pruebe algo como:
echo '<esc>^Hello world from window '$WINDOW'<esc>\\'
donde '<esc>' es un escape, '^' es una flecha hacia arriba literal y '\\' se convierte en una sola barra invertida.
TIPOS DE VENTANA
Screen proporciona tres tipos diferentes de ventana. Las nuevas ventanas se crean con el comando screen de screen (véase también la entrada en el capítulo PERSONALIZACIÓN). El primer parámetro del comando screen define qué tipo de ventana se crea. Los diferentes tipos de ventana son todos casos especiales del tipo normal. Se han añadido para permitir que screen se utilice de forma eficiente como multiplexor de consola con 100 o más ventanas.
La ventana normal contiene un shell (por defecto, si no se proporciona ningún parámetro) o cualquier otro comando del sistema que pueda ejecutarse desde un shell (por ejemplo, slogin, etc.).
Si se especifica un nombre de tty (dispositivo especial de caracteres) (por ejemplo, /dev/ttya) como primer parámetro, la ventana se conecta directamente a este dispositivo. Este tipo de ventana es similar a screen cu -l /dev/ttya. Se requiere acceso de lectura y escritura al nodo del dispositivo y se intenta una apertura exclusiva del nodo para marcar la conexión como ocupada. Se permite un parámetro opcional que consiste en una lista separada por comas de indicadores en la notación utilizada por stty(1):
<velocidad_de_transmisión>
Normalmente 300, 1200, 9600 o 19200. Esto afecta tanto a la velocidad de transmisión como a la de recepción.
cs8 o cs7
Especifica la transmisión de ocho (o siete) bits por byte.
cstopb o -cstopb
Especifica dos bits de parada por carácter (uno con '-').
parenb o -parenb
Genera un bit de paridad en la salida y espera un bit de paridad en la entrada.
parodd o -parodd
Establece la paridad impar (o la paridad par con '-').
ixon o -ixon
Habilita (o deshabilita) el control de flujo de software (CTRL-S/CTRL-Q) para el envío de datos.
ixoff o -ixoff
Habilita (o deshabilita) el control de flujo de software para la recepción de datos.
istrip o -istrip
Borra (o mantiene) el octavo bit de cada byte recibido.
Puede especificar tantas de estas opciones como sean aplicables. Las opciones no especificadas hacen que el controlador de terminal determine los valores de los parámetros de la conexión. Estos valores dependen del sistema y pueden ser valores predeterminados o valores guardados de una conexión anterior.
Para las ventanas tty, el comando info muestra algunas de las líneas de control del módem en la línea de estado. Estas pueden incluir 'RTS', 'CTS', 'DTR', 'DSR', 'CD' y más. Esto depende de las ioctl() disponibles y de los archivos de cabecera del sistema, así como de las capacidades físicas de la tarjeta serie. Las señales que están en bajo lógico (inactivas) tienen su nombre precedido por un signo de exclamación (!), de lo contrario la señal está en alto lógico (activa). Las señales que no son compatibles con el hardware pero que están disponibles para la interfaz ioctl() suelen mostrarse en bajo.
Cuando el bit de estado CLOCAL es verdadero, todo el conjunto de señales del módem se coloca dentro de llaves ({ y }). Cuando se establece el bit CRTSCTS o TIOCSOFTCAR, las señales 'CTS' o 'CD' se muestran entre paréntesis, respectivamente.
Para las ventanas tty, el comando break hace que la línea de transmisión de datos (TxD) se ponga en bajo durante un período de tiempo especificado. Se espera que esto se interprete como una señal de interrupción en el otro extremo. No se envían datos y no se cambia ninguna línea de control del módem cuando se emite una interrupción.
Si el primer parámetro es //telnet, se espera que el segundo parámetro sea un nombre de host, y un tercer parámetro opcional puede especificar un número de puerto TCP (el valor predeterminado es 23 en decimal). Screen se conectará a un servidor que escucha en el host remoto y utilizará el protocolo telnet para comunicarse con ese servidor.
Para las ventanas telnet, el comando info muestra detalles sobre la conexión entre corchetes ([ y ]) al final de la línea de estado.
b BINARY. La conexión está en modo binario.
e ECHO. El eco local está deshabilitado.
c SGA. La conexión está en modo `carácter' (predeterminado: `línea').
t TTYPE. El tipo de terminal ha sido solicitado por el host remoto. Screen envía el
nombre screen a menos que se indique lo contrario (consulte también el comando `term').
w NAWS. El sitio remoto se notifica sobre los cambios de tamaño de la ventana.
f LFLOW. El host remoto enviará información de control de flujo. (Ignorado por el momento).
Indicadores adicionales para la depuración son x, t y n (XDISPLOC, TSPEED y NEWENV).
Para las ventanas telnet, el comando break envía el código telnet IAC BREAK (decimal 243) al host remoto.
Este tipo de ventana solo está disponible si screen se compiló con la opción ENABLE_TELNET definida.
SECUENCIAS DE ESCAPE
Screen proporciona un mecanismo de escape para insertar información como la hora actual en los mensajes o nombres de archivo. El carácter de escape es '%' con una excepción: dentro de la barra de estado de una ventana, se utiliza '^%' ('^E') en su lugar.
Aquí está la lista completa de secuencias de escape admitidas:
% el propio carácter de escape
E establece %? en verdadero si se ha pulsado el carácter de escape.
e codificación
f indicadores de la ventana, consulte ventanas para conocer los significados de los diversos indicadores
F establece %? en verdadero si la ventana tiene el foco
h barra de estado de la ventana
H nombre de host del sistema
n número de ventana
P establece %? en verdadero si la región actual está en modo copiar/pegar
S nombre de la sesión
s tamaño de la ventana
t título de la ventana
u todos los demás usuarios en esta ventana
w todos los números y nombres de las ventanas. Con el calificador '-': hasta la ventana actual; con el calificador '+': comenzando con la ventana posterior a la actual.
W todos los números y nombres de las ventanas excepto la actual
x el comando ejecutado, incluidos los argumentos, que se está ejecutando en esta ventana
X el comando ejecutado sin argumentos que se está ejecutando en esta ventana
? la parte hasta el siguiente '%?' se muestra solo si una secuencia de escape '%' dentro de la parte se expande a una
cadena no vacía
: parte else de '%?'
= rellenar la cadena hasta el ancho de la pantalla (como hfill de TeX). Si se especifica un número, rellenar hasta el porcentaje del ancho de la ventana. Un calificador '0' le dice a screen que trate el número como
una posición absoluta. Puede especificar que se rellene en relación con la última posición de relleno absoluto agregando un calificador '+', o para rellenar en relación con el margen derecho, utilizando '-'. El relleno
trunca la cadena si la posición especificada se encuentra antes de la posición actual. Agregue el calificador 'L' para cambiar esto.
< igual que '%=' pero solo realiza el truncamiento, no lo rellena con espacios
> marca la posición actual del texto para el siguiente truncamiento. Cuando la pantalla necesita realizar un truncamiento, intenta hacerlo de manera que la posición marcada se mueva al porcentaje especificado del área de salida. (El área comienza desde la última posición de relleno absoluto y termina
con la posición especificada por el operador de truncamiento). El calificador 'L' indica a la pantalla
que marque las partes truncadas con '...'.
{ cadena modificadora de atributos/colores terminada por la siguiente }
` Sustituir con la salida de un comando 'backtick'. El calificador de longitud se utiliza incorrectamente para
identificar uno de los comandos.
Los escapes 'c' y 'C' pueden calificarse con un '0' para que la pantalla utilice cero en lugar de espacio como carácter de relleno. El calificador '0' también hace que el escape '=' utilice posiciones absolutas. Los escapes 'n' y '=' entienden un calificador de longitud (por ejemplo, '%3n'), 'D' y 'M' se pueden prefijar con 'L' para generar nombres largos, 'w' y 'W' también muestran las marcas de la ventana si se da 'L'.
Un modificador de atributos/colores se utiliza para cambiar los atributos o la configuración de color. Su formato es [modificador de atributo] [descripción de color]. El modificador de atributo debe ir prefijado por un indicador de cambio si puede confundirse con una descripción de color. Los siguientes tipos de cambio son conocidos:
+ añadir el conjunto especificado a los atributos actuales
- eliminar el conjunto de los atributos actuales
! invertir el conjunto en los atributos actuales
= cambiar los atributos actuales al conjunto especificado
El conjunto de atributos se puede especificar como un número hexadecimal o como una combinación de las siguientes letras:
d tenue
u subrayado
b negrita
r invertir
s /destacado
B parpadeante
Los colores se codifican como un número hexadecimal o dos letras que especifican el color de fondo y el color de primer plano deseados (en ese orden). Los siguientes colores son conocidos:
k negro
r rojo
g verde
y amarillo
b azul
m magenta
c cian
w blanco
d color predeterminado
. dejar el color sin cambios
Las versiones en mayúsculas de las letras especifican colores brillantes. También puede utilizar el pseudo-color 'i' para establecer solo el brillo y dejar el color sin cambios. Una descripción de color de un dígito/letra se trata como color de primer plano o color de fondo según los atributos actuales: si se establece el modo de inversión, se cambia el color de fondo en lugar de el color de primer plano. Si no le gusta esto, prefije el color con '..'. Si desea el mismo comportamiento para las descripciones de color de dos letras, también prefíjeles con '..'. Como caso especial, %{-} restaura los atributos y colores que se establecieron antes del último cambio (es decir, saca un nivel de la pila de cambios de color).
Ejemplos:
G establece el color en verde brillante
+b r usa rojo en negrita
= yd borra todos los atributos, escribe en color predeterminado sobre fondo amarillo.
%-Lw%{= BW}%50>%n%f* %t%{-}%+Lw%<
Las ventanas disponibles centradas en la ventana actual y truncadas al ancho disponible. La ventana actual se muestra en blanco sobre azul. Esto se puede usar con hardstatus alwayslastline.
%?%F%{.R.}%?%3n %t%? [%h]%?
El número y el título de la ventana y el hardstatus de la ventana, si se ha establecido uno. También use un fondo rojo si esta es la ventana activa. Útil para una cadena de título.
CONTROL DE FLUJO
Cada ventana tiene una configuración de control de flujo que determina cómo screen maneja los caracteres XON y XOFF (y posiblemente el carácter de interrupción). Cuando el control de flujo está desactivado, screen ignora los caracteres XON y XOFF, lo que permite al usuario enviarlos al programa actual simplemente escribiéndolos (útil para el editor emacs, por ejemplo). La contrapartida es que tardará más en que la salida de un programa normal se detenga en respuesta a un XOFF. Con el control de flujo activado, los caracteres XON y XOFF se utilizan para pausar inmediatamente la salida de la ventana actual. Todavía puede enviar estos caracteres al programa actual, pero debe usar los comandos de pantalla de dos caracteres apropiados (típicamente C-a q (xon) y C-a s (xoff)). Los comandos xon/xoff también son útiles para escribir C-s y C-q en un terminal que intercepta estos caracteres.
Cada ventana tiene un valor de control de flujo inicial establecido con la opción -f o el comando defflow .screenrc. De forma predeterminada, las ventanas están configuradas para cambiar automáticamente el control de flujo. Luego, se puede cambiar entre los tres estados: 'fijo en', 'fijo apagado' y 'automático' de forma interactiva con el comando flow, que está enlazado a "C-a f".
El modo de cambio automático de control de flujo maneja el control de flujo utilizando el modo TIOCPKT (como lo hace rlogin). Si el controlador tty no admite TIOCPKT, screen intenta determinar el modo correcto según la configuración actual del teclado de la aplicación: cuando está habilitado, el control de flujo se desactiva y viceversa. Por supuesto, aún puede manipular el control de flujo manualmente cuando sea necesario.
Si está ejecutando con el control de flujo habilitado y descubre que presionar la tecla de interrupción (generalmente Cc) no interrumpe la pantalla hasta que se hayan desplazado otras 6 a 8 líneas, intente ejecutar screen con la opción de interrupción (agregue la marca de interrupción al comando flow en su .screenrc o use la opción de línea de comandos -i). Esto hace que la salida que screen ha acumulado del programa interrumpido se vacíe. Una desventaja es que la memoria del terminal virtual contiene la versión no vaciada de la salida, lo que en casos raros puede causar pequeñas imprecisiones en la salida. Por ejemplo, si cambia de pantalla y regresa, o actualiza la pantalla con C-a l, vería la versión de la salida que habría obtenido sin que la interrupción estuviera activada. Además, es posible que deba desactivar el control de flujo (o usar el modo de flujo automático para desactivarlo automáticamente) cuando ejecute un programa que espera que escriba el carácter de interrupción como entrada, ya que es posible interrumpir la salida del terminal virtual al terminal físico cuando el control de flujo está habilitado. Si esto sucede, una simple actualización de la pantalla con C-a l la restaurará. Pruebe cada modo y use el que le resulte más cómodo.
TÍTULOS (nombrar ventanas)
Puede personalizar el nombre de cada ventana en la pantalla de ventanas (visualizada con el comando windows (C-a w)) estableciéndolo con uno de los comandos de título. Normalmente, el nombre que se muestra es el nombre real del comando del programa creado en la ventana. Sin embargo, a veces es útil distinguir entre varios programas con el mismo nombre o cambiar el nombre sobre la marcha para reflejar el estado actual de la ventana.
El nombre predeterminado para todas las ventanas de shell se puede establecer con el comando shelltitle en el archivo .screenrc, mientras que todas las demás ventanas se crean con un comando de pantalla y, por lo tanto, se puede establecer su nombre con la opción -t. De forma interactiva, existe la secuencia de escape title-string (<esc>kname<esc>) y el comando title (C-a A). El primero se puede generar desde una aplicación para controlar el nombre de la ventana bajo control de software, y el segundo solicitará un nombre cuando se escriba. También puede vincular nombres predefinidos a teclas con el comando title para establecer las cosas rápidamente sin solicitar. El cambio de título mediante esta secuencia de escape se puede controlar mediante los comandos defdynamictitle y dynamictitle.
Finalmente, screen tiene una heurística específica de shell que se habilita estableciendo el nombre de la ventana en search|name y configurando que se genere una secuencia de escape de título nulo como parte de su indicador. La parte search especifica una cadena de búsqueda de final de indicador, mientras que la parte name especifica el nombre de shell predeterminado para la ventana. Si el nombre termina en :, screen agregará lo que considere que es el comando actual que se está ejecutando en la ventana al final del nombre del shell de la ventana (por ejemplo, name:cmd). De lo contrario, el nombre del comando actual reemplazará el nombre del shell mientras se está ejecutando.
Así es como funciona: debe modificar su indicador de shell para que genere una secuencia de escape de título nulo (<esc>k<esc>) como parte de su indicador. La última parte de su indicador debe ser la misma que la cadena que especificó para la parte search del título. Una vez que esto esté configurado, screen utilizará la secuencia de escape title para borrar el nombre del comando anterior y prepararse para el siguiente comando. Luego, cuando se reciba una nueva línea del shell, se realizará una búsqueda del final del indicador. Si se encuentra, tomará la primera palabra después de la cadena coincidente y la utilizará como nombre del comando. Si el nombre del comando comienza con '!', '%' o '^', screen utilizará la primera palabra de la línea siguiente (si se encuentra) en lugar del nombre que acaba de encontrar. Esto ayuda a los usuarios de csh a obtener mejores nombres de comando cuando utilizan el control de trabajos o la recuperación del historial de comandos.
Aquí hay algunos ejemplos de .screenrc:
screen -t top 2 nice top
Agregar esta línea a su .screenrc iniciará un comando nice top en la ventana 2, que se llamará top en lugar de nice.
shelltitle '> |csh'
screen 1
Estos comandos iniciarán un shell con el shelltitle dado. El título especificado es un autotítulo que espera que el indicador y el comando escrito se vean así:
/usr/joe/src/dir> trn
(parece que busca después de > el nombre del comando). El estado de la ventana mostrará el nombre trn mientras se ejecuta el comando y volverá a csh cuando se complete.
bind R screen -t '% |root:' su
Tener este comando en su .screenrc vinculará la secuencia de teclas C-a R al comando su y le dará un nombre de autotítulo de root:. Para que funcione este autotítulo, la pantalla podría verse así:
% !em
emacs file.c
Aquí, el usuario escribió el comando de historial de csh !em, que ejecutó el comando emacs ingresado previamente. El estado de la ventana mostrará root:emacs durante la ejecución del comando y volverá a simplemente root: cuando se complete.
bind o title
bind E title ""
bind u title (unknown)
El primer enlace no tiene argumentos, por lo que le pedirá un título cuando escriba Ca o. El segundo enlace borrará la configuración actual del autotítulo (C-a E). El tercer enlace establecerá el título de la ventana actual en (unknown) (C-a u).
Algo a tener en cuenta al agregar una secuencia de escape de título nulo a su indicador es que algunos shells (como csh) cuentan todos los caracteres no de control como parte de la longitud del indicador. Si estos caracteres invisibles no son un múltiplo de 8, entonces, al retroceder sobre un tabulador, se producirá una visualización incorrecta. Una forma de solucionarlo es usar un indicador como este:
set prompt='^[[0000m^[k^[\% '
La secuencia de escape <esc\>[0000m no solo normaliza los atributos de los caracteres, sino que todos los ceros redondean la longitud de los caracteres invisibles a 8. Los usuarios de Bash probablemente deseen imprimir la secuencia de escape en PROMPT\_COMMAND:
PROMPT_COMMAND='printf "\033k\033\134"'
(Usé \134 para imprimir un ' debido a un error en bash v1.04).
EL TERMINAL VIRTUAL
Cada ventana en una sesión de screen emula un terminal VT100, con algunas funciones adicionales agregadas. El emulador VT100 está codificado de forma rígida y no se pueden emular otros tipos de terminal.
Normalmente, screen intenta emular la mayor parte posible del estándar VT100/ANSI. Pero si su terminal carece de ciertas capacidades, la emulación puede no ser completa. En estos casos, screen tiene que indicarle a las aplicaciones que faltan algunas de las funciones. Esto no es un problema en las máquinas que usan termcap, porque screen puede usar la variable $TERMCAP para personalizar el termcap estándar de screen.
Pero si realiza un rlogin en otra máquina o su máquina solo admite terminfo, este método falla. Debido a esto, screen ofrece una forma de abordar estos casos. Así es como funciona:
Cuando screen intenta determinar un nombre de terminal para sí mismo, primero busca una entrada con el nombre screen.<term>, donde <term> es el contenido de su variable $TERM. Si no existe tal entrada, screen intenta screen (o screen-w si el terminal es ancho (132 columnas o más)). Si incluso esta entrada no se puede encontrar, vt100 se usa como sustituto.
La idea es que si tienes una terminal que no admite una función importante (por ejemplo, borrar un carácter o limpiar hasta el final), puedes crear una nueva entrada termcap/terminfo para screen (llamada screen.<dumbterm>) en la que esta función esté desactivada. Si esta entrada se instala en tus máquinas, podrás realizar un rlogin y seguir utilizando la entrada termcap/terminfo correcta. El nombre de la terminal se coloca en la variable $TERM de todas las nuevas ventanas. Screen también establece la variable $TERMCAP, que refleja las capacidades de la terminal virtual emulada. Ten en cuenta que, sin embargo, en las máquinas que utilizan la base de datos terminfo, esta variable no tiene ningún efecto. Además, la variable $WINDOW se establece con el número de ventana de cada ventana.
El conjunto real de capacidades admitidas por la terminal virtual depende de las capacidades admitidas por la terminal física. Por ejemplo, si la terminal física no admite el modo de subrayado, screen no incluirá las capacidades us y ue en la variable $TERMCAP de la ventana. Sin embargo, un número mínimo de capacidades debe ser compatible con una terminal para poder ejecutar screen; a saber, desplazamiento, limpiar pantalla y direccionamiento directo del cursor (además, screen no se ejecuta en terminales de impresión o en terminales que sobrescriben).
También puedes personalizar el valor de $TERMCAP utilizado por screen utilizando el comando termcap .screenrc o definiendo la variable $SCREENCAP antes de iniciar screen. Cuando se define esta última, su valor se copiará textualmente en la variable $TERMCAP de cada ventana. Esto puede ser la definición completa de la terminal o un nombre de archivo donde se define la terminal para screen (y/o screen-w).
Ten en cuenta que screen respeta el comando terminfo .screenrc si el sistema utiliza la base de datos terminfo en lugar de termcap.
Cuando la capacidad booleana G0 está presente en la entrada termcap de la terminal en la que se ha llamado a screen, la emulación de terminal de screen admite múltiples conjuntos de caracteres. Esto permite que una aplicación utilice, por ejemplo, el conjunto de caracteres gráficos VT100 o conjuntos de caracteres nacionales. Las siguientes funciones de control de ISO 2022 son compatibles: bloquear desplazamiento G0 (SI), bloquear desplazamiento G1 (SO), bloquear desplazamiento G2, bloquear desplazamiento G3, desplazamiento único G2 y desplazamiento único G3. Cuando se crea o restablece una terminal virtual, el conjunto de caracteres ASCII se designa como G0 a G3. Cuando la capacidad G0 está presente, screen evalúa las capacidades S0, E0 y C0 si están presentes. S0 es la secuencia que utiliza la terminal para habilitar y comenzar el conjunto de caracteres gráficos en lugar de SI. E0 es el reemplazo correspondiente de SO. C0 proporciona una cadena de traducción carácter por carácter que se utiliza durante el modo semigráfico. Esta cadena se construye de forma similar a la capacidad acsc de terminfo.
Cuando las capacidades po y pf están presentes en la entrada termcap de la terminal, las aplicaciones que se ejecutan en una ventana de screen pueden enviar salida al puerto de la impresora de la terminal. Esto permite que un usuario tenga una aplicación en una ventana enviando salida a una impresora conectada a la terminal, mientras que todas las demás ventanas siguen activas (el puerto de la impresora se habilita y deshabilita de nuevo para cada fragmento de salida). Como efecto secundario, los programas que se ejecutan en diferentes ventanas pueden enviar salida a la impresora simultáneamente. Los datos enviados a la impresora no se muestran en la ventana. El comando info muestra una línea que comienza con PRIN mientras la impresora está activa.
^ creen mantiene una línea de estado (hardstatus) para cada ventana. Si se selecciona una ventana, la línea de estado de la pantalla se actualizará para que coincida con la línea de estado de la ventana. Si la pantalla no tiene una línea de estado, esta se mostrará como un mensaje estándar de screen. La línea de estado se puede cambiar con el comando APC de ANSI: ESC_<cadena>ESC. Como una comodidad para los usuarios de xterm, también se acepta la secuencia ESC]0..2;<cadena>^G.
Algunas capacidades solo se colocan en la variable $TERMCAP de la terminal virtual si se pueden implementar de manera eficiente en la terminal física. Por ejemplo, dl (borrar línea) solo se coloca en la variable $TERMCAP si la terminal admite borrar la línea en sí o regiones de desplazamiento. Tenga en cuenta que esto puede provocar confusión cuando la sesión se vuelve a conectar en una terminal diferente, ya que el valor de $TERMCAP no se puede modificar mediante procesos primarios.
La capacidad de "pantalla alternativa" no está habilitada de forma predeterminada. Establezca el comando altscreen en .screenrc para habilitarla.
La siguiente es una lista de secuencias de control reconocidas por screen. (V) y (A) indican funciones específicas de VT100 y ANSI o ISO, respectivamente.
ESC E Siguiente línea
ESC D Índice
ESC M Índice inverso
ESC H Establecer la posición del cursor horizontal
ESC Z Enviar la cadena de identificación VT100
ESC 7 (V) Guardar el cursor y los atributos
ESC 8 (V) Restaurar el cursor y los atributos
ESC [s (A) Guardar el cursor y los atributos
ESC [u (A) Restaurar el cursor y los atributos
ESC c Restablecer al estado inicial
ESC g Señal audible visual
ESC Pn p Visibilidad del cursor (97801)
Pn = 6 Invisible
Pn = 7 Visible
ESC = (V) Modo de teclado de aplicación
ESC > (V) Modo de teclado numérico
ESC # 8 (V) Llenar la pantalla con E
ESC \ (A) Terminador de cadena
ESC ^ (A) Cadena de mensaje de privacidad (línea de mensaje)
ESC ! Cadena de mensaje global (línea de mensaje)
ESC k Cadena de definición (Alias)
ESC P (A) Cadena de control de dispositivo. Envía una cadena directamente al terminal host
sin interpretación.
ESC _ (A) Comando de programa de aplicación (estado)
ESC ] 0 ; cadena ^G (A) Comando del sistema operativo (estado, truco del título de xterm)
ESC ] 83 ; cmd ^G (A) Ejecuta el comando de pantalla. Esto solo funciona si se compila el soporte multiusuario en screen. Se utiliza el pseudousuario :window: para verificar la lista de control de acceso. Utilice addacl :window: -rwx #? para crear un
usuario sin derechos y permitir solo los comandos necesarios.
Control-N (A) Bloquea Shift G1 (SO)
Control-O (A) Bloquea Shift G0 (SI)
ESC n (A) Bloquea Shift G2
ESC o (A) Bloquea Shift G3
ESC N (A) Shift único G2
ESC O (A) Shift único G3
ESC ( Pcs (A) Designa el conjunto de caracteres como G0
ESC ) Pcs (A) Designa el conjunto de caracteres como G1
ESC * Pcs (A) Designa el conjunto de caracteres como G2
ESC + Pcs (A) Designa el conjunto de caracteres como G3
ESC [ Pn ; Pn H Direccionamiento de cursor directo
ESC [ Pn ; Pn f igual que lo anterior
ESC [ Pn J Borrar en pantalla
Pn = None o 0 Desde el cursor hasta el final de la pantalla
Pn = 1 Desde el principio de la pantalla hasta el cursor
Pn = 2 Pantalla completa
ESC [ Pn K Borrar en línea
Pn = None o 0 Desde el cursor hasta el final de la línea
Pn = 1 Desde el principio de la línea hasta el cursor
Pn = 2 Línea completa
ESC [ Pn X Borrar carácter
ESC [ Pn A Cursor arriba
ESC [ Pn B Cursor abajo
ESC [ Pn C Cursor derecha
ESC [ Pn D Cursor izquierda
ESC [ Pn E Cursor línea siguiente
ESC [ Pn F Cursor línea anterior
ESC [ Pn G Cursor posición horizontal
ESC [ Pn ` igual que lo anterior
ESC [ Pn d Cursor posición vertical
ESC [ Ps ;...; Ps m Seleccionar representación gráfica
Ps = None o 0 Representación predeterminada
Ps = 1 Negrita
Ps = 2 (A) Débil
Ps = 3 (A) Modo de resaltado (ANSI: cursiva)
Ps = 4 Subrayado
Ps = 5 Parpadeo
Ps = 7 Imagen negativa
Ps = 22 (A) Intensidad normal
Ps = 23 (A) Modo de resaltado desactivado (ANSI: cursiva desactivada)
Ps = 24 (A) No subrayado
Ps = 25 (A) No parpadeo
Ps = 27 (A) Imagen positiva
Ps = 30 (A) Primer plano negro
Ps = 31 (A) Primer plano rojo
Ps = 32 (A) Primer plano verde
Ps = 33 (A) Primer plano amarillo
Ps = 34 (A) Primer plano azul
Ps = 35 (A) Primer plano Magenta
Ps = 36 (A) Primer plano Cian
Ps = 37 (A) Primer plano Blanco
Ps = 39 (A) Primer plano Predeterminado
Ps = 40 (A) Fondo Negro
Ps = ...
Ps = 49 (A) Fondo Predeterminado
ESC [ Pn g Tab Clear
Pn = None o 0 Borrar Tab en la Posición Actual
Pn = 3 Borrar Todos los Tabs
ESC [ Pn ; Pn r (V) Establecer Región de Desplazamiento
ESC [ Pn I (A) Tab Horizontal
ESC [ Pn Z (A) Tab Hacia Atrás
ESC [ Pn L (A) Insertar Línea
ESC [ Pn M (A) Eliminar Línea
ESC [ Pn @ (A) Insertar Carácter
ESC [ Pn P (A) Eliminar Carácter
ESC [ Pn S Desplazar Región de Desplazamiento hacia Arriba
ESC [ Pn T Desplazar Región de Desplazamiento hacia Abajo
ESC [ Pn ^ Igual que el anterior
ESC [ Ps ;...; Ps h Establecer Modo
ESC [ Ps ;...; Ps l Restablecer Modo
Ps = 4 (A) Modo de Inserción
Ps = 20 (A) Avance de Línea Automático
Ps = 34 Visibilidad Normal del Cursor
Ps = ?1 (V) Teclas de Cursor de la Aplicación
Ps = ?3 (V) Cambiar el Ancho del Terminal a 132 columnas
Ps = ?5 (V) Video Invertido
Ps = ?6 (V) Modo de Origen
Ps = ?7 (V) Modo de Ajuste de Línea
Ps = ?9 Seguimiento del Ratón X10
Ps = ?25 (V) Cursor Visible
Ps = ?47 (V) Pantalla Alternativa (código antiguo de xterm)
Ps = ?1000 (V) Seguimiento del Ratón VT200
Ps = ?1047 Pantalla Alternativa (código nuevo de xterm)
Ps = ?1049 Pantalla Alternativa (código nuevo de xterm)
ESC [ 5 i (A) Iniciar retransmisión a la impresora (Copia de Medios ANSI)
ESC [ 4 i (A) Detener retransmisión a la impresora (Copia de Medios ANSI)
ESC [ 8 ; Ph ; Pw t Redimensionar la ventana a `Ph' líneas y `Pw' columnas (especial de SunView)
ESC [ c Enviar Cadena de Identificación VT100
ESC [ x Enviar Informe de Parámetros del Terminal
ESC [ > c Enviar Cadena de Atributos del Dispositivo Secundario VT220
ESC [ 6 n Enviar Informe de Posición del Cursor
TRADUCCIÓN DE ENTRADAS
Para realizar una emulación VT100 completa, la pantalla debe detectar que una secuencia de caracteres en el flujo de entrada fue generada por una pulsación de tecla en el teclado del usuario e insertar la secuencia de escape de estilo VT100. Screen tiene una forma muy flexible de hacerlo al permitir asignar comandos arbitrarios a secuencias arbitrarias de caracteres. Para la emulación VT100 estándar, el comando siempre insertará una cadena en el búfer de entrada de la ventana (consulte también el comando en la tabla de comandos). Dado que las secuencias generadas por una pulsación de tecla pueden cambiar después de una reconexión desde un tipo de terminal diferente, es posible vincular comandos al nombre termcap de las teclas. Screen insertará el enlace correcto después de cada reconexión. Consulte el comando bindkey para obtener más detalles sobre la sintaxis y los ejemplos.
Aquí está la tabla de las asignaciones de teclas predeterminadas. La cuarta columna indica el comando que se ejecuta cuando el teclado se cambia al modo de aplicación.
┌─────────────────┬──────────────┬──────────┬──────────┐
│ Nombre de la tecla │ Nombre de termcap │ Comando │ Modo de aplicación │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Cursor arriba │ ku │ \033[A │ \033OA │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Cursor abajo │ kd │ \033[B │ \033OB │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Cursor derecha │ kr │ \033[C │ \033OC │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Cursor izquierda │ kl │ \033[D │ \033OD │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 0 │ k0 │ \033[10~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 1 │ k1 │ \033OP │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 2 │ k2 │ \033OQ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 3 │ k3 │ \033OR │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 4 │ k4 │ \033OS │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 5 │ k5 │ \033[15~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 6 │ k6 │ \033[17~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 7 │ k7 │ \033[18~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 8 │ k8 │ \033[19~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 9 │ k9 │ \033[20~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 10 │ k; │ \033[21~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 11 │ F1 │ \033[23~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Tecla de función 12 │ F2 │ \033[24~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Inicio │ kh │ \033[1~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Fin │ kH │ \033[4~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Insertar │ kI │ \033[2~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Borrar │ kD │ \033[3~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Página arriba │ kP │ \033[5~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Página abajo │ kN │ \033[6~ │ │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 0 │ f0 │ 0 │ \033Op │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 1 │ f1 │ 1 │ \033Oq │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 2 │ f2 │ 2 │ \033Or │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 3 │ f3 │ 3 │ \033Os │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 4 │ f4 │ 4 │ \033Ot │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 5 │ f5 │ 5 │ \033Ou │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 6 │ f6 │ 6 │ \033Ov │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 7 │ f7 │ 7 │ \033Ow │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 8 │ f8 │ 8 │ \033Ox │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico 9 │ f9 │ 9 │ \033Oy │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico + │ f+ │ + │ \033Ok │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico - │ f- │ - │ \033Om │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico * │ f\* │ * │ \033Oj │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico / │ f/ │ / │ \033Oo │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico = │ fq │ = │ \033OX │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico . │ f. │ . │ \033On │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico , │ f, │ , │ \033Ol │
├─────────────────┼──────────────┼──────────┼──────────┤
│ Teclado numérico Intro │ fe │ \015 │ \033OM │
└─────────────────┴──────────────┴──────────┴──────────┘
CAPACIDADES ESPECIALES DE LA TERMINAL
La siguiente tabla describe todas las capacidades de la terminal que son reconocidas por screen y que no se encuentran en el manual de termcap(5). Puede colocar estas capacidades en sus entradas de termcap (en /etc/termcap) o utilizarlas con los comandos termcap, terminfo y termcapinfo en sus archivos screenrc. A menudo no es posible colocar estas capacidades en la base de datos terminfo.
LP (bool) La terminal tiene márgenes de estilo VT100 (`márgenes mágicos`). Tenga en cuenta que esta capacidad está obsoleta porque screen utiliza el estándar 'xn' en su lugar.
Z0 (str) Cambia el ancho a 132 columnas.
Z1 (str) Cambia el ancho a 80 columnas.
WS (str) Redimensiona la pantalla. Esta capacidad tiene el ancho y la altura deseados como argumentos. Ejemplo de SunView(tm): '\E[8;%d;%dt'.
NF (bool) La terminal no necesita control de flujo. Envía ^S y ^Q directamente a la aplicación. Lo mismo que 'flow off'. El opuesto de esta capacidad es 'nx'.
G0 (bool) La terminal puede manejar secuencias de selección de fuentes ISO 2022.
S0 (str) Cambia el conjunto de caracteres 'G0' al conjunto de caracteres especificado. El valor predeterminado es '\E(%.'.
E0 (str) Cambia el conjunto de caracteres 'G0' al conjunto de caracteres estándar. El valor predeterminado es '\E(B'.
C0 (str) Utilice la cadena como tabla de conversión para la fuente '0'. Consulte la capacidad 'ac' para obtener más detalles.
CS (str) Cambie las teclas de cursor al modo de aplicación.
CE (str) Cambie las teclas de cursor de nuevo al modo normal.
AN (bool) Active la opción de autodestrucción. Consulte el comando 'autonuke' para obtener más detalles.
OL (num) Establezca el límite del búfer de salida. Consulte el comando 'obuflimit' para obtener más detalles.
KJ (str) Establezca la codificación del terminal. Consulte el comando 'encoding' para ver las codificaciones válidas.
AF (str) Cambie el color de primer plano del carácter de forma compatible con ANSI. Esta capacidad casi siempre se establecerá en '\E[3%dm' ('\E[3%p1%dm' en las máquinas terminfo).
AB (str) Igual que 'AF', pero cambie el color de fondo.
AX (bool) ¿Entiende ANSI para establecer el color de primer plano/fondo predeterminado (\E[39m / \E[49m)?
XC (str) Describa una traducción de caracteres a cadenas en función de la fuente actual. Los detalles se proporcionan en la siguiente sección.
XT (bool) El terminal entiende secuencias especiales de xterm (OSC, seguimiento del ratón).
C8 (bool) El terminal necesita que se muestren los colores de alta intensidad en negrita (por ejemplo, Eterm).
TF (bool) Agregue las capacidades faltantes a la entrada termcap/info. (Se establece por defecto).
TRADUCCIÓN DE CARACTERES
Screen tiene un mecanismo potente para traducir caracteres a cadenas arbitrarias en función de la fuente y el tipo de terminal actuales. Utilice esta función si desea trabajar con un conjunto de caracteres estándar común (por ejemplo, ISO8851-latin1), incluso en terminales que distribuyen los caracteres más inusuales en varias páginas de fuentes de idiomas nacionales.
Sintaxis:
XC=<charset-mapping>{,,<charset-mapping>}
<charset-mapping> := <designator><template>{,<mapping>}
<mapping> := <char-to-be-mapped><template-arg>
Las cosas entre llaves pueden repetirse cualquier número de veces.
Un <charset-mapping> le indica a screen cómo mapear los caracteres en la fuente <designator> ('B': Ascii, 'A': UK, 'K': alemán, etc.) a cadenas. Cada <mapping> describe a qué cadena se traducirá un solo carácter. Se utiliza un mecanismo de plantilla, ya que la mayoría de las veces los códigos tienen mucho en común (por ejemplo, las cadenas para cambiar a y desde otro conjunto de caracteres). Cada aparición de '%' en <template> se sustituye por el <template-arg> especificado junto con el carácter. Si sus cadenas no son similares en absoluto, entonces utilice '%' como plantilla y coloque la cadena completa en <template-arg>. Se agregó un mecanismo de comillas para permitir el uso de un '%' real. El carácter '\' cita los caracteres especiales '\', '%', y ','.
Aquí hay un ejemplo:
termcap hp700 'XC=B\E(K%\E(B,\304[,\326\\\\,\334]'
Esto le indica a screen cómo traducir los caracteres de la ISOlatin1 (conjunto de caracteres 'B') en mayúsculas con diéresis en un terminal hp700 que tiene un conjunto de caracteres alemán. '\304' se traduce a '\E(K[\E(B' y así sucesivamente. Tenga en cuenta que esta línea se analiza tres veces antes de que se cree la tabla de búsqueda interna, por lo que se necesita una gran cantidad de comillas para crear una sola '\'.
Se agregó otra extensión para permitir una mayor emulación: si un mapeo traduce el carácter '%' sin comillas, se enviará al terminal cada vez que screen cambie al <designator> correspondiente. En este caso especial, se supone que la plantilla es simplemente '%' porque la secuencia de cambio de conjunto de caracteres y los mapeos de caracteres normalmente no tienen mucho en común.
Este ejemplo muestra un uso de la extensión:
termcap xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334'
Aquí, una parte del conjunto de caracteres alemán ('K') se emula en un xterm. Si screen tiene que cambiar al conjunto de caracteres 'K', '\E(B' se enviará al terminal, es decir, se utilizará el conjunto de caracteres ASCII en su lugar. La plantilla es simplemente '%', por lo que el mapeo es directo: '[' a '\304', '\' a '\326' y ']' a '\334'.
ENTORNO
COLUMNS Número de columnas en el terminal (anula la entrada termcap).
HOME Directorio en el que buscar .screenrc.
LINES Número de líneas en el terminal (anula la entrada termcap).
LOCKPRG Programa de bloqueo de pantalla.
NETHACKOPTIONS Activa la opción de nethack.
PATH Se utiliza para localizar programas que se ejecutarán.
SCREENCAP Para personalizar el valor TERMCAP de un terminal.
SCREENDIR Directorio de socket alternativo.
SCREENRC Archivo screenrc de usuario alternativo.
SHELL Programa de shell predeterminado para abrir ventanas (predeterminado /bin/sh). Consulte también el comando .screenrc.
STY Nombre de socket alternativo.
SYSSCREENRC Archivo screenrc de sistema alternativo.
TERM Nombre del terminal.
TERMCAP Descripción del terminal.
WINDOW Número de ventana de una ventana (en el momento de la creación).
ARCHIVOS
.../screen-4.?.??/etc/screenrc
.../screen-4.?.??/etc/etcscreenrc Ejemplos en el paquete de distribución de screen para archivos de inicialización privados y globales.
$SYSSCREENRC
/etc/screenrc Comandos de inicialización de screen
$SCREENRC
$HOME/.screenrc Se lee después de /etc/screenrc
$SCREENDIR/S-<login>
/run/screen/S-<login> Directorios de socket (predeterminado)
/usr/tmp/screens/S-<login> Directorios de socket alternativos.
<directorio de socket>/.termcap Escrito por la función de salida "termcap"
/usr/tmp/screens/screen-exchange o
/tmp/screen-exchange búfer de comunicación entre procesos de screen
hardcopy.[0-9] Imágenes de pantalla creadas por la función hardcopy
screenlog.[0-9] Archivos de registro de salida creados por la función log
/usr/lib/terminfo/?/* o
/etc/termcap Bases de datos de capacidad de terminal
/run/utmp Registros de inicio de sesión
$LOCKPRG Programa que bloquea un terminal.
AUTORES
Creado originalmente por Oliver Laumann. Durante mucho tiempo, fue mantenido y desarrollado por Juergen Weigert, Michael Schroeder, Micah Cowan y Sadrul Habib Chowdhury. Desde 2015, mantenido y desarrollado por Amadeusz Slawinski <_> y Alexander Naumov <_>.
COPYLEFT
Copyright (c) 2018-2023 Alexander Naumov <_> Amadeusz Slawinski <_> Copyright (c) 2015-2017 Juergen Weigert <_> Alexander Naumov <_> Amadeusz Slawinski <_> Copyright (c) 2010-2015 Juergen Weigert <_> Sadrul Habib Chowdhury <_> Copyright (c) 2008, 2009 Juergen Weigert <_> Michael Schroeder <_> Micah Cowan <_> Sadrul Habib Chowdhury <_> Copyright (C) 1993-2003 Juergen Weigert <_> Michael Schroeder <_> Copyright (C) 1987 Oliver Laumann
Este programa es software libre; puede redistribuirlo y/o modificarlo bajo los términos de la Licencia Pública General de GNU publicada por la Free Software Foundation; ya sea la versión 3, o (a su elección) cualquier versión posterior. Este programa se distribuye con la esperanza de que sea útil, pero SIN NINGUNA GARANTÍA; sin siquiera la garantía implícita de COMERCIABILIDAD o ADECUACIÓN PARA UN PROPÓSITO PARTICULAR. Consulte la Licencia Pública General de GNU para obtener más detalles. Debería haber recibido una copia de la Licencia Pública General de GNU junto con este programa (vea el archivo COPYING); si no es así, escriba a la Free Software Foundation, Inc., 59 Temple Place - Suite 330 Boston, MA 02111-1307, EE. UU.
COLABORADORES
Vincent Lefevre <_>, Carl Drougge <_>, Maarten ter Huurne <_>, Jussi Kukkonen <_>, Eric S. Raymond <_>, Thomas Renninger <_>, Axel Beckert <_>, Ken Beal <_>, Rudolf Koenig <_>, Toerless Eckert <_>, Wayne Davison <_>, Patrick Wolfe <_>, Bart Schaefer <_>, Nathan Glasser <_>, Larry W. Virden <_>, Howard Chu <_>, Tim MacKenzie <_>, Markku Jarvinen <_>, Marc Boucher <_>, Doug Siebert <_>, Ken Stillson <_>, Ian Frechett <_>, Brian Koehmstedt <_>, Don Smith <_>, Frank van der Linden <_>, Martin Schweikert <_>, David Vrona <_>, E. Tye McQueen <_>, Matthew Green <_>, Christopher Williams <_>, Matt Mosley <_>, Gregory Neil Shapiro <_>, Johannes Zellner <_>, Pablo Averbuj <_>.
DISPONIBILIDAD
La última versión oficial de screen está disponible a través de ftp anónimo en ftp.gnu.org/gnu/screen/ o cualquier otro sitio de distribución de GNU. La página de inicio de screen es https://savannah.gnu.org/projects/screen/ y el repositorio git es https://git.savannah.gnu.org/cgit/screen.git. Si desea ayudar, envíe una nota a _.
ERRORES
^ m' (modo de eliminación) yxs' no se gestionan correctamente (se ignoran). `xn' se trata como un indicador de margen mágico.
Screen no tiene idea de los caracteres de doble altura o doble anchura. Pero esta es la única área donde se permite que vttest falle.
No es posible cambiar la variable de entorno $TERMCAP al volver a conectarse con un tipo de terminal diferente.
El soporte de los sistemas basados en terminfo es muy limitado. Agregar capacidades adicionales a $TERMCAP puede no tener ningún efecto.
Screen no utiliza las pestañas de hardware.
Screen debe instalarse como set-uid con propietario root en la mayoría de los sistemas para poder cambiar correctamente el propietario del archivo de dispositivo tty para cada ventana. También pueden ser necesarios permisos especiales para escribir el archivo /run/utmp.
Las entradas en /run/utmp no se eliminan cuando screen se cierra con SIGKILL. Esto hará que algunos programas (como "w" o "rwho") anuncien que un usuario ha iniciado sesión cuando en realidad no lo ha hecho.
La pantalla puede mostrar una advertencia extraña cuando su tty no tiene una entrada utmp.
Cuando se cuelga la línea del módem, es posible que la pantalla no se desconecte (o cierre) automáticamente a menos que el controlador del dispositivo esté configurado para enviar una señal HANGUP. Para desconectar una sesión de pantalla, utilice la opción de línea de comandos -D o -d.
Si se establece una contraseña, las opciones de línea de comandos -d y -D siguen desconectando una sesión sin preguntar.
Tanto breaktype como defbreaktype cambian el método de generación de interrupciones utilizado por todos los dispositivos de terminal. El primero debe cambiar una configuración específica de la ventana, mientras que el segundo debe cambiar solo el valor predeterminado para las nuevas ventanas.
Al adjuntar a una sesión multiusuario, el archivo .screenrc del usuario no se utiliza. La configuración personal de cada usuario debe incluirse en el archivo .screenrc desde el que se inicia la sesión, o debe cambiarse manualmente.
Una imaginación extraña es lo más útil para aprovechar al máximo todas las funciones.
Envíe informes de errores, correcciones, mejoras, camisetas, dinero, cerveza y pizza a _.
VER TAMBIÉN
termcap(5), utmp(5), vi(1), captoinfo(1), tic(1), tty(4), pty(7)