Este es el comando zshmodules que se puede ejecutar en el proveedor de alojamiento gratuito OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, el emulador en línea de Windows o el emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
zshmodules - módulos cargables zsh
DESCRIPCIÓN
Algunas partes opcionales de zsh están en módulos, separadas del núcleo del shell. Cada uno de
estos módulos se pueden vincular al shell en el momento de la compilación, o se pueden vincular dinámicamente
mientras se ejecuta el shell si la instalación es compatible con esta función. Los módulos están vinculados
en tiempo de ejecución con el zmodcargar comando, ver zshconstruidos(1).
Los módulos que se incluyen con la distribución zsh son:
zsh/atributo
Builtins para manipular atributos extendidos (xattr).
zsh/cap
Componentes integrados para manipular conjuntos de capacidades (privilegios) POSIX.1e (POSIX.6).
zsh / clon
Una función integrada que puede clonar un shell en ejecución en otro terminal.
zsh / compctl
La compacto integrado para controlar la finalización.
zsh/completar
El código básico de finalización.
zsh / complist
Terminación de extensiones de listado.
zsh/computil
Un módulo con utilidades integradas necesarias para la finalización basada en la función de shell
.
zsh/maldiciones
maldice los comandos de ventana
zsh / datetime
Algunos comandos y parámetros de fecha/hora.
zsh/db/gdbm
Componentes integrados para administrar parámetros de matriz asociativa vinculados a bases de datos GDBM.
zsh/deltochar
Una función ZLE que duplica EMACS' zap-to-char.
zsh/ejemplo
Un ejemplo de cómo escribir un módulo.
zsh / archivos
Algunos comandos básicos de manipulación de archivos incorporados.
zsh/langinfo
Interfaz para información local.
zsh / mapfile
Acceso a archivos externos a través de una matriz asociativa especial.
zsh / mathfunc
Funciones científicas estándar para su uso en evaluaciones matemáticas.
zsh / newuser
Haga arreglos para que se instalen los archivos para los nuevos usuarios.
zsh / parámetro
Acceso a tablas hash internas a través de matrices asociativas especiales.
zsh / pcre
Interfaz a la biblioteca PCRE.
zsh / regex
Interfaz para la biblioteca de expresiones regulares POSIX.
zsh/programado
Una función integrada que proporciona una función de ejecución temporizada dentro del shell.
zsh / net / socket
Manipulación de sockets de dominio Unix
zsh / stat
Una interfaz de comando integrada para el stat llamada al sistema.
zsh / system
Una interfaz integrada para varias características del sistema de bajo nivel.
zsh / net / tcp
Manipulación de sockets TCP
zsh / termcap
Interfaz a la base de datos termcap.
zsh/terminfo
Interfaz a la base de datos terminfo.
zsh / zftp
Un cliente FTP integrado.
zsh / zle
El editor de línea Zsh, incluido el llave de encuadernación y variado incorporados.
parámetro zsh/zle
Acceso a las partes internas del Zsh Line Editor a través de parámetros.
zsh/zprof
Un módulo que permite la creación de perfiles para funciones de shell.
zsh / zpty
Un incorporado para iniciar un comando en una pseudo-terminal.
zsh / zselect
Bloquear y regresar cuando los descriptores de archivos estén listos.
zsh / zutil
Algunas utilidades incorporadas, por ejemplo, la que admite la configuración a través de estilos.
EL ZSH/ATTR MÓDULO
La zsh/atributo El módulo se utiliza para manipular atributos extendidos. El -h causas de la opción
todos los comandos para operar en enlaces simbólicos en lugar de sus objetivos. Las construcciones en este
módulo son:
zgetattr [ -h ] nombre de archivo atributo [ parámetro ]
Obtener el atributo extendido atributo de lo especificado nombre de archivo. Si el opcional
argumento parámetro se da, el atributo se establece en ese parámetro en lugar de
siendo impreso a stdout.
zsetattr [ -h ] nombre de archivo atributo propuesta de
Establecer el atributo extendido atributo en el especificado nombre de archivo a propuesta de.
zdelattr [ -h ] nombre de archivo atributo
Eliminar el atributo extendido atributo de lo especificado nombre de archivo.
zlistattr [ -h ] nombre de archivo [ parámetro ]
Enumere los atributos extendidos establecidos actualmente en el especificado nombre de archivo. Si el
argumento opcional parámetro se da, la lista de atributos se establece en ese
parámetro en lugar de imprimirse en stdout.
zgetattr y zlistattr asignar memoria dinámicamente. Si el atributo o la lista de
atributos crece entre la asignación y la llamada para obtenerlos, devuelven 2. En todos
otros errores, se devuelve 1. Esto permite que la función de llamada verifique este caso y
rever.
EL ZSH/CAP MÓDULO
La zsh/cap El módulo se utiliza para manipular conjuntos de capacidades POSIX.1e (POSIX.6). Si el
sistema operativo no es compatible con esta interfaz, los componentes definidos por este módulo
hacer nada. Los componentes de este módulo son:
tapa [ capacidades ]
Cambie los conjuntos de capacidades de proceso del shell a los especificados capacidades, De lo contrario
mostrar las capacidades actuales del shell.
obtener tapa nombre de archivo ...
Esta es una implementación integrada de la utilidad estándar POSIX. Muestra el
conjuntos de capacidades en cada uno especificado nombre de archivo.
setcap capacidades nombre de archivo ...
Esta es una implementación integrada de la utilidad estándar POSIX. Establece el
conjuntos de capacidades en cada uno especificado nombre de archivo a la especificada capacidades.
EL ZSH/CLON MÓDULO
La zsh / clon El módulo pone a disposición un comando integrado:
clonar tty
Crea una instancia bifurcada del shell actual, adjunta al especificado tty. En
la nueva carcasa, la PID, PPID y TTY los parámetros especiales se cambian apropiadamente.
$! se establece en cero en el nuevo shell, y en el PID del nuevo shell en el original
cáscara.
El estado de retorno del incorporado es cero en ambos shells si es exitoso y distinto de cero
en caso de error.
El objetivo de clonar debe ser un terminal sin usar, como una consola virtual sin usar
o una terminal virtual creada por
xterm -e sh -c 'trampa : INT DEJAR TSTP; tty;
mientras :; do sleep 100000000; hecho'
Se justifican algunas palabras de explicación sobre esta larga línea de comando xterm: cuando
haciendo clonación en un pseudo-terminal, alguna otra sesión ("sesión" entendida como un unix
grupo de sesión o SID) ya posee el terminal. Por lo tanto, el zsh clonado no puede
adquirir el pseudo-terminal como un tty de control. Eso significa dos cosas:
· las señales de control del trabajo irán al grupo de procesos sh-started-by-xterm
(es por eso que deshabilitamos INT QUIT y TSTP con trampa; de lo contrario, el ciclo while
podría ser suspendido o asesinado)
· el shell clonado tendrá el control de trabajo deshabilitado y las teclas de control de trabajo
(control-C, control-\ y control-Z) no funcionará.
Esto no se aplica cuando se clona a un no usado v.c.
La clonación a un terminal usado (y no preparado) resultará en dos procesos de lectura
simultáneamente desde el mismo terminal, con los bytes de entrada yendo aleatoriamente a cualquiera
.
clonar es principalmente útil como reemplazo integrado de shell para openvt.
EL ZSH/COMPCTL MÓDULO
La zsh / compctl El módulo pone a disposición dos comandos integrados. compacto, es el viejo,
forma obsoleta de controlar las finalizaciones para ZLE. Ver zshcompctl(1). El otro incorporado
mando, llamada compulsiva se puede usar en widgets de finalización definidos por el usuario, consulte zshcompwid(1).
EL ZSH/COMPLETO MÓDULO
La zsh/completar módulo pone a disposición varios comandos integrados que se pueden utilizar en
widgets de finalización definidos por el usuario, consulte zshcompwid(1).
EL ZSH/CUMPLIR MÓDULO
La zsh / complist El módulo ofrece tres extensiones a los listados de finalización: la capacidad de
resaltar coincidencias en dicha lista, la capacidad de desplazarse por listas largas y un diferente
estilo de finalización del menú.
De colores terminación anuncios
Siempre que uno de los parámetros ZLS_COLORS or ZLS_COLORES está configurado y el zsh / complist
el módulo está cargado o vinculado en el shell, las listas de finalización estarán coloreadas. Nota,
sin embargo, eso cumplir no se cargará automáticamente si no está vinculado en: en
sistemas con carga dinámica, `zmodcargar zsh / complist' se requiere.
Los parametros ZLS_COLORS y ZLS_COLORES describir cómo se resaltan las coincidencias. girar
al resaltar un valor vacío es suficiente, en cuyo caso todos los valores predeterminados que se dan a continuación
se utilizará. El formato del valor de estos parámetros es el mismo que usa GNU
versión de la ls comando: una lista separada por dos puntos de especificaciones de la forma
`nombre =propuesta de'. los nombre puede ser una de las siguientes cadenas, la mayoría de las cuales especifican archivo
tipos para los cuales el propuesta de se utilizará. Las cadenas y sus valores predeterminados son:
no 0 para texto normal (es decir, cuando se muestra algo que no sea un archivo coincidente)
fi 0 para archivos regulares
di 32 para directorios
ln 36 para enlaces simbólicos. Si esto tiene el valor especial dirigidos, los enlaces simbólicos son
desreferenciado y el archivo de destino utilizado para determinar el formato de visualización.
pi 31 para canalizaciones con nombre (FIFO)
so 33 para enchufes
bd 44, 37
para dispositivos de bloque
cd 44, 37
para dispositivos de caracteres
or ninguna
para un enlace simbólico a un archivo inexistente (el valor predeterminado es el definido para ln)
mi ninguna
para un archivo inexistente (el valor predeterminado es el definido para fi); este código es
actualmente no se usa
su 37, 41
para archivos con conjunto de bits setuid
sg 30, 43
para archivos con conjunto de bits setgid
tw 30, 42
para directorios mundiales grabables con sticky bit establecido
ow 34, 43
para directorios mundiales grabables sin conjunto de bits adhesivos
sa ninguna
para archivos con un alias de sufijo asociado; esto solo se prueba después de
sufijos, como se describe a continuación
st 37, 44
para directorios con sticky bit establecido pero no de escritura mundial
ex 35 para archivos ejecutables
lc \mi[ para el código de la izquierda (ver más abajo)
rc m por el código correcto
tc 0 para el carácter que indica el tipo de archivo impreso después de los nombres de archivo si el
LISTA_TIPOS la opción está configurada
sp 0 para los espacios impresos después de las coincidencias para alinear la siguiente columna
ec ninguna
para el código final
Aparte de estas cadenas, el nombre también puede ser un asterisco (`*') seguido de cualquier cadena.
La propuesta de dado para tal cadena se usará para todos los archivos cuyo nombre termine con el
cuerda. los nombre también puede ser un signo igual (`=') seguido de un patrón; el
EXTENDIDO_GLOB se activará la opción para la evaluación del patrón. El propuesta de dado por
este patrón se usará para todas las coincidencias (no solo los nombres de archivo) cuya cadena de visualización sea
coincide con el patrón. Las definiciones de la forma con el signo igual inicial toman
prioridad sobre los valores definidos para los tipos de archivos, que a su vez tienen prioridad sobre los
formulario con el asterisco principal (extensiones de archivo).
La forma inicial-igual también permite colorear diferentes partes de las cadenas mostradas.
diferentemente. Para esto, el patrón tiene que usar el `(#B)' bandera globbing y pares de
paréntesis que rodean las partes de las cadenas que se van a colorear de manera diferente. En
este caso el propuesta de puede constar de más de un código de color separados por signos de igual. El
El primer código se utilizará para todas las partes para las que no se especifica un código explícito y el
Los siguientes códigos se utilizarán para las partes que coincidan con los subpatrones entre paréntesis.
Por ejemplo, la especificación `=(#b)(?)*(?)=0=3=7' se utilizará para todos los partidos que son
al menos dos caracteres de largo y usará el código `3' para el primer carácter, `7' para
el último carácter y `0' para el resto.
Las tres formas de nombre puede estar precedido por un patrón entre paréntesis. Si esto se da,
de la forma más propuesta de se usará solo para coincidencias en grupos cuyos nombres coincidan con el patrón
dado entre paréntesis. Por ejemplo, `(g*)m*=43' destaca todas las coincidencias que comienzan con
`m' en grupos cuyos nombres comienzan con `g' usando el código de color `43'. En caso de `lc',
`rc'y'ec' códigos, el patrón de grupo se ignora.
Tenga en cuenta también que todos los patrones se prueban en el orden en que aparecen en el parámetro
valor hasta que el primero coincida con el que luego se usa.
Al imprimir una coincidencia, el código imprime el valor de lc, el valor para el tipo de archivo o el
última especificación coincidente con un `*', El valor de rc, la cadena que se mostrará para el
igualarse a sí mismo, y luego el valor de ec si eso está definido o los valores de lc, noy rc
if ec no está definido.
Los valores predeterminados cumplen con la norma ISO 6429 (ANSI) y se pueden usar en dispositivos compatibles con vt100.
terminales como xterms. En terminales monocromáticos los valores por defecto no tendrán visible
efecto. los colores la función de la contribución se puede usar para obtener matrices asociativas
que contienen los códigos para terminales ANSI (consulte la sección `Otras funciones' en
zshcontrib(1)). Por ejemplo, después de cargar colores, uno podría usar `$colores[rojo]' Llegar
el código para el color de primer plano rojo y `$colores[bg-verde]' para el código de fondo
color verde.
Si se utiliza el sistema de finalización invocado por compinit, estos parámetros no deben establecerse
directamente porque el sistema los controla por sí mismo. En cambio, el colores de lista el estilo debería
ser utilizado (ver la sección 'Configuración del sistema de finalización' en zshcompsys(1)).
Desplazamiento in terminación anuncios
Para habilitar el desplazamiento a través de una lista de finalización, el PROMPT DE LISTA se debe establecer el parámetro. Su
el valor se utilizará como indicación; si es la cadena vacía, aparecerá un aviso predeterminado
usado. El valor puede contener escapes de la forma `%x'. Soporta los escapes `%B',
`%b', `%S', `%s', `%U', `%u', `%F', `%f', `%K', `%k'y'%{...%}' usado también en caparazón
indicaciones, así como tres pares de secuencias adicionales: a `%l'o'%L' se sustituye por el
número de la última línea que se muestra y el número total de líneas en el formulario `número/total'; a
`%m'o'%M' se reemplaza con el número de la última coincidencia mostrada y el número total de
partidos; y `%p'o'%P' se reemplaza con `Top', `Fondo' o la posición del primero
línea mostrada en porcentaje del número total de líneas, respectivamente. En cada uno de estos casos
el formulario con la letra mayúscula se reemplazará con una cadena de ancho fijo, acolchado
a la derecha con espacios, mientras que la forma minúscula no se rellenará.
Si el parámetro PROMPT DE LISTA está configurado, el código de finalización no preguntará si la lista debe ser
mostrado. En su lugar, inmediatamente comienza a mostrar la lista, deteniéndose después de la primera
en pantalla, mostrando el mensaje en la parte inferior, esperando una pulsación de tecla después de temporalmente
cambiar a la lista de desplazamiento mapa de teclas Algunas de las funciones zle tienen un significado especial
mientras se desplaza por las listas:
enviar-romper
deja de listar descartando la tecla presionada
aceptar línea, abajo de la historia, línea descendente o historia
línea descendente o búsqueda, vi-línea-descendente-o-historia
se desplaza hacia adelante una línea
palabra-completa, menú completo, expandir o completar
expandir-o-completar-prefijo, menú-completar-o-expandir
se desplaza hacia adelante una pantalla completa
aceptar-buscar
detener la lista pero no tomar ninguna otra acción
Todos los demás caracteres dejan de aparecer e inmediatamente procesan la clave como de costumbre. Cualquier llave
que no está atado en el lista de desplazamiento mapa de teclas o que está vinculado a clave-indefinida se mira hacia arriba
en el mapa de teclas actualmente seleccionado.
En cuanto a las ZLS_COLORS y ZLS_COLORES parámetros, PROMPT DE LISTA no debe configurarse directamente
cuando se utiliza el sistema de finalización basado en la función de shell. En cambio, el indicador de lista style
debe ser usado.
Menú selección
La zsh / complist El módulo también ofrece un estilo alternativo de selección de coincidencias de una lista,
llamada selección de menú, que se puede usar si el shell está configurado para volver a la última
mensaje después de mostrar una lista de finalización (ver el ALWAYS_LAST_PROMPT en opción
zshoptions(1)).
La selección de menú puede ser invocada directamente por el widget menú-seleccionar definido por este módulo.
Este es un widget ZLE estándar que se puede vincular a una tecla de la forma habitual, como se describe en
zshzle(1).
Alternativamente, el parámetro SELECCIÓN DE MENÚ se puede establecer en un número entero, lo que da el mínimo
número de coincidencias que deben estar presentes antes de que la selección del menú se active automáticamente.
Este segundo método requiere que se inicie la finalización del menú, ya sea directamente desde un widget
como menú completo, o debido a una de las opciones MENÚ_COMPLETO or AUTO_MENÚ siendo establecido
If SELECCIÓN DE MENÚ está configurado, pero es 0, 1 o está vacío, la selección del menú siempre se iniciará durante
una terminación de menú ambigua.
Cuando se utiliza el sistema de finalización basado en funciones de shell, el SELECCIÓN DE MENÚ el parámetro debe
no ser utilizado (como el ZLS_COLORS y ZLS_COLORES parámetros descritos anteriormente). En lugar de,
de la forma más menu El estilo debe usarse con el seleccionar =... palabra clave.
Una vez iniciada la selección del menú, se enumerarán las coincidencias. si hay mas coincidencias
de lo que cabe en la pantalla, solo se muestra la primera pantalla completa. Los fósforos para insertar en el
La línea de comando se puede seleccionar de esta lista. En la lista, se resalta una coincidencia usando
el valor de ma de la ZLS_COLORS or ZLS_COLORES parámetro. El valor predeterminado para este
es7' que obliga a que la coincidencia seleccionada se resalte usando el modo destacado en una
Terminal compatible con vt100. si ninguno ZLS_COLORS ni ZLS_COLORES se establece, lo mismo
secuencia de control de terminal como para `%SSe usa 'escape en avisos.
Si hay más coincidencias de las que caben en la pantalla y el parámetro MENÚPROMPT se establece, su
el valor se mostrará debajo de las coincidencias. Admite las mismas secuencias de escape que
PROMPT DE LISTA, pero el número de partido o línea que se muestra será el de aquel en el que se
se coloca la marca. Si su valor es la cadena vacía, se utilizará un mensaje predeterminado.
La DESPLAZAR MENÚ El parámetro se puede utilizar para especificar cómo se desplaza la lista. Si el
el parámetro no está configurado, esto se hace línea por línea, si está configurado en `0' (cero), la lista
desplazar la mitad del número de líneas de la pantalla. Si el valor es positivo, da la
número de líneas para desplazarse y si es negativo, la lista se desplazará el número de
líneas de la pantalla menos el valor (absoluto).
En cuanto a las ZLS_COLORS, ZLS_COLORES y PROMPT DE LISTA parámetros, tampoco MENÚPROMPT ni
DESPLAZAR MENÚ debe configurarse directamente cuando se utiliza el sistema de finalización basado en la función de shell.
En su lugar, el solicitud de selección y seleccionar-desplazarse Se deben usar estilos.
El código de finalización a veces decide no mostrar todas las coincidencias en la lista. Estos
las coincidencias ocultas son coincidencias para las cuales la función de finalización que las agregó
pidió explícitamente que no aparecieran en la lista (usando el -n opción del compadre
comando incorporado) o son coincidencias que duplican una cadena que ya está en la lista (porque
difieren solo en cosas como prefijos o sufijos que no se muestran). En la lista
utilizado para la selección de menú, sin embargo, incluso estas coincidencias se muestran para que sea posible
seleccionarlos. Para resaltar tales coincidencias, el hi y du capacidades en el ZLS_COLORS y
ZLS_COLORES los parámetros son compatibles con coincidencias ocultas de primer y segundo tipo,
respectivamente.
La selección de coincidencias se realiza moviendo la marca usando las funciones de movimiento zle.
Cuando no se pueden mostrar todos los partidos en la pantalla al mismo tiempo, la lista se desplazará hacia arriba
y hacia abajo al cruzar la línea superior o inferior. Las siguientes funciones zle tienen especial
significado durante la selección del menú. Tenga en cuenta que los siguientes siempre realizan la misma tarea
dentro del mapa de selección de menú y no puede ser reemplazado por widgets definidos por el usuario, ni puede el
conjunto de funciones se amplíe:
aceptar línea, aceptar-buscar
aceptar la coincidencia actual y salir de la selección del menú (pero no hacer que el comando
línea para ser aceptado)
enviar-romper
deja la selección del menú y restaura el contenido anterior de la línea de comando
volver a mostrar, pantalla clara
ejecutar su función normal sin salir de la selección del menú
aceptar y retener, aceptar-y-menu-completar
aceptar la coincidencia actualmente insertada y continuar la selección permitiendo seleccionar la
siguiente coincidencia para insertar en la línea
aceptar-e-inferir-el-siguiente-historial
acepta la coincidencia actual y luego intenta completarla con la selección del menú nuevamente; en
el caso de archivos esto permite seleccionar un directorio e inmediatamente intentar
archivos completos en él; si no hay coincidencias, se muestra un mensaje y se puede usar
deshacer para volver a completar el nivel anterior, todas las demás teclas salen del menú
selección (incluidas las otras funciones zle que son especiales durante
selección de menú)
deshacer elimina las coincidencias insertadas durante la selección del menú por una de las tres funciones
antes
abajo de la historia, línea descendente o historia
vi-línea-descendente-o-historia, línea descendente o búsqueda
mueve la marca una línea hacia abajo
historia arriba, línea ascendente o historial
vi-up-line-o-historia, línea ascendente o búsqueda
mueve la marca una línea hacia arriba
adelante-char, vi-forward-char
mueve la marca una columna a la derecha
char al revés, vi-retroceso-char
mueve la marca una columna a la izquierda
palabra de avance, vi-reenviar-palabra
vi-adelante-fin de palabra, emacs-reenviar-palabra
mueve la marca una pantalla hacia abajo
palabra al revés, vi-palabra-inversa, emacs-palabra-hacia atrás
mueve la marca una pantalla hacia arriba
vi-reenviar-palabra-en-blanco, vi-reenviar-fin-de-palabra-en-blanco
mueve la marca a la primera línea del siguiente grupo de coincidencias
vi-palabra en blanco al revés
mueve la marca a la última línea del grupo de coincidencias anterior
comienzo de la historia
mueve la marca a la primera línea
fin de la historia
mueve la marca a la última línea
comienzo-de-búfer-o-historia, principio de línea
comienzo-de-línea-hist, vi-comienzo-de-línea
mueve la marca a la columna más a la izquierda
fin-de-búfer-o-historial, fin de la línea
hist-final-de-línea, vi-fin-de-línea
mueve la marca a la columna más a la derecha
palabra-completa, menú completo, expandir o completar
expandir-o-completar-prefijo, menú-expandir-o-completar
mueve la marca a la siguiente coincidencia
menú inverso completo
mueve la marca al partido anterior
vi-insertar
esto alterna entre el modo normal e interactivo; en modo interactivo las teclas
obligado a autoinserto y autoinserto-unmeta insertar en la línea de comando como en
modo de edición normal pero sin salir del menú de selección; despues de cada caracter
se vuelve a intentar completar y la lista cambia para contener solo las nuevas coincidencias; el
los widgets de finalización hacen que se inserte la cadena inequívoca más larga en el comando
línea y deshacer y retroceder-borrar-char volver al conjunto anterior de partidos
historial de búsqueda incremental hacia adelante
historial-búsqueda-incremental-hacia atrás
esto inicia búsquedas incrementales en la lista de finalizaciones mostradas; en esto
modo, aceptar línea solo sale de búsqueda incremental, volviendo al menú normal
modo de selección
Todas las funciones de movimiento se envuelven en los bordes; cualquier otra función zle no listada deja
selección de menú y ejecuta esa función. Es posible hacer widgets en lo anterior.
list haga lo mismo usando la forma del widget con un `.' Al frente. por ejemplo, el
widget`.aceptar línea' tiene el efecto de salir de la selección del menú y aceptar todo el
línea de comando.
Durante esta selección, el widget utiliza el mapa de teclas menúseleccionar. Cualquier clave que no esté definida
en este mapa de teclas o que está vinculado a clave-indefinida se busca en el mapa de teclas actualmente
seleccionado. Esto se utiliza para garantizar que las teclas más importantes utilizadas durante la selección
(es decir, las teclas de cursor, retorno y TAB) tienen valores predeterminados razonables. Sin embargo, las claves en el
menúseleccionar El mapa de teclas se puede modificar directamente usando el llave de encuadernación comando incorporado (ver
módulos zsh(1)). Por ejemplo, para hacer que la tecla de retorno abandone la selección del menú sin aceptar
el partido actualmente seleccionado uno podría llamar
llave de encuadernación -M menúseleccionar '^ M' enviar-romper
después de cargar el zsh / complist módulo.
EL ZSH/COMPUTIL MÓDULO
La zsh/computil módulo agrega varios comandos integrados que son utilizados por algunos de los
funciones de finalización en el sistema de finalización basado en funciones de shell (ver zshcompsys(1)
). Excepto por cotizar estos comandos incorporados son muy especializados y, por lo tanto, no muy
interesante al escribir sus propias funciones de finalización. En resumen, estos
los comandos son:
comparaciones
Esto es utilizado por el _argumentos función para hacer el argumento y la línea de comando
analizando Me gusta describir tiene una opción -i para hacer el análisis e inicializar
algún estado interno y varias opciones para acceder a la información del estado para decidir
lo que debe completarse.
describir
Esto es utilizado por el _describir función para construir las pantallas para los partidos y para
obtenga las cadenas para agregar como coincidencias con sus opciones. En la primera llamada uno de los
opciones -i or -I debe proporcionarse como primer argumento. En el primer caso,
se generarán cadenas de visualización sin las descripciones, en el segundo caso, el
cadena utilizada para separar las coincidencias de sus descripciones se debe dar como el
Se mostrará el segundo argumento y las descripciones (si las hay). Todos los demás argumentos
son como los argumentos de definición para _describir misma.
En el momento que todos los DARWINs coticen incluyendo los deslizamientos describir ha sido llamado con el -i o el -I opción, puede ser
llamado repetidamente con el -g opción y los nombres de cuatro parámetros como su
argumentos Esto recorrerá los diferentes conjuntos de coincidencias y almacenará los
valor de estado completo[lista] en el primer escalar, las opciones para compadre en el segundo
matriz, las coincidencias en la tercera matriz y las cadenas que se mostrarán en la
lista de finalización en la cuarta matriz. Los arreglos pueden luego ser dados directamente a
compadre para registrar los partidos con el código de finalización.
compila
Usado por el _ruta_archivos función para optimizar la generación de nombres de archivos recursivos complejos
(globo). Hace tres cosas. Con el -p y -P opciones construye el mundo
patrones a utilizar, incluyendo los caminos ya manejados y tratando de optimizar el
patrones con respecto al prefijo y sufijo de la línea y la coincidencia
especificación utilizada actualmente. El -i la opción hace las pruebas de directorio para el
ignorar a los padres estilo y el -r opción prueba si un componente para algunas de las coincidencias
son iguales a la cadena en la línea y elimina todas las demás coincidencias si eso es cierto.
grupos comp
Usado por el _etiquetas función para implementar las partes internas del orden de grupo estilo.
Esto solo toma sus argumentos como nombres de grupos de finalización y crea los grupos.
para ello (los seis tipos: ordenados y sin ordenar, ambos sin eliminar duplicados, con
eliminando todos los duplicados y eliminando los duplicados consecutivos).
cotizar [ -p ] nombres ...
Puede haber razones para escribir funciones de finalización que tienen que agregar las coincidencias
usando el -Q opción de compadre y realizar cotizaciones ellos mismos. En vez de
interpretando el primer carácter de la todas_las_comillas clave de la compestado especial
asociación y el uso de la q bandera para expansiones de parámetros, uno puede usar este incorporado
mando. Los argumentos son los nombres de los parámetros escalares o de matriz y los valores
de estos parámetros se cotizan según sea necesario para el nivel de cotización más interno. Si el
-p se da la opción, la cotización se realiza como si hubiera algún prefijo antes de los valores de
los parámetros, de modo que no se entrecomillará un signo igual inicial.
El estado de retorno es distinto de cero en caso de error y cero en caso contrario.
etiquetas comp
país
Estos implementan las partes internas del mecanismo de etiquetas.
valores comp
Como comparaciones, pero para el _valores función.
EL ZSH/MALDICIONES MÓDULO
La zsh/maldiciones El módulo pone a disposición un comando incorporado y varios parámetros.
incorporado
maldiciones init
maldiciones final
maldiciones añadirwin objetivoganar líneas ncoles comenzar_y comenzar_x [ padreganar ]
maldiciones Delwin objetivoganar
maldiciones refrescar [ objetivoganar ...]
maldiciones contacto objetivoganar ...
maldiciones movimiento objetivoganar nuevo y nuevo_x
maldiciones limpiar objetivoganar [ volver a dibujar | eol | bot ]
maldiciones posición objetivoganar matriz
maldiciones tanque objetivoganar personaje
maldiciones cadena objetivoganar cadena
maldiciones frontera objetivoganar frontera
maldiciones attr objetivoganar [[+|-]atributo | fg_col/bg_col ] [...]
maldiciones bg objetivoganar [[+|-]atributo | fg_col/bg_col | @tanque ] [...]
maldiciones mover objetivoganar [ on | off | [+|-]líneas ]
maldiciones Las opciones de entrada objetivoganar [ detener [ kparam [ param ]]]
maldiciones ratón [ retrasar número | [+|-]movimiento ]
maldiciones tiempo de espera objetivoganar intervalo
maldiciones consultachar objetivoganar [ detener ]
Manipular ventanas de maldiciones. Todos los usos de este comando deben estar entre paréntesis por
`maldiciones init' para inicializar el uso de maldiciones, y `maldiciones final' para terminarlo; omitiendo
`maldiciones final' puede hacer que el terminal esté en un estado no deseado.
El subcomando añadirwin crea una ventana con líneas líneas y ncoles columnas Su
la esquina superior izquierda se colocará en la fila comenzar_y y columna comenzar_x de la pantalla
objetivoganar es una cadena y se refiere al nombre de una ventana que no está actualmente
asignado. Tenga en cuenta en particular la convención de curses de que aparecen valores verticales
antes de los valores horizontales.
If añadirwin se le da una ventana existente como argumento final, la nueva ventana es
creado como una subventana de padreganar. Esto difiere de una nueva ventana ordinaria en
que la memoria del contenido de la ventana se comparte con la memoria de los padres.
Las subventanas deben eliminarse antes que su padre. Tenga en cuenta que las coordenadas de
las subventanas son relativas a la pantalla, no a la principal, como ocurre con otras ventanas.
Usa el subcomando Delwin para eliminar una ventana creada con añadirwin. Tenga en cuenta que final
sí no eliminar ventanas implícitamente, y eso Delwin no borra la imagen de la pantalla
de la ventana.
La ventana correspondiente a la pantalla completa visible se llama stdscr; siempre
existe después de `maldiciones init' y no se puede borrar con Delwin.
El subcomando refrescar actualizará la ventana objetivoganar; esto es necesario para hacer cualquier
cambios pendientes (como los caracteres que ha preparado para la salida con tanque) visible
en la pantalla. refrescar sin un argumento hace que la pantalla se borre y
redibujado Si se dan varias ventanas, la pantalla se actualiza una vez al final.
El subcomando contacto señala el objetivoganaraparece como modificado. Esto es necesario
antes refrescaring windows si una ventana que estaba en frente de otra ventana (que
puede ser stdscr) esta borrado.
El subcomando movimiento mueve la posición del cursor en objetivoganar a nuevas coordenadas nuevo y
y nuevo_x. Tenga en cuenta que el subcomando cadena (pero no el subcomando tanque) avances
la posición del cursor sobre los caracteres añadidos.
El subcomando limpiar borra el contenido de objetivoganar. Uno (y no más de uno)
se pueden especificar tres opciones. con la opción volver a dibujar, además el próximo
refrescar of objetivoganar hará que la pantalla se borre y se vuelva a pintar. Con el
opción eol, objetivoganar solo se borra hasta el final de la línea actual del cursor. Con
la opción bot, objetivoganar se borra hasta el final de la ventana, es decir, todo para
la derecha y debajo del cursor se borra.
El subcomando posición escribe varias posiciones asociadas con objetivoganar en el
matriz nombrada matriz. Estos son, en orden:
- Las coordenadas y y x del cursor relativas a la parte superior izquierda de objetivoganar
- Las coordenadas y y x de la parte superior izquierda de objetivoganar en la pantalla
- La talla de objetivoganar en las dimensiones y y x.
La salida de caracteres y cadenas se logra mediante tanque y cadena respectivamente.
Para dibujar un borde alrededor de la ventana objetivoganar, Utilizar frontera. Tenga en cuenta que el borde no es
posteriormente manejado de manera especial: en otras palabras, el borde es simplemente un conjunto de
salida de caracteres en el borde de la ventana. Por lo tanto, se puede sobrescribir, puede
desplazarse fuera de la ventana, etc.
El subcomando attr establecerá objetivoganarAtributos o color de primer plano/fondo
par para cualquier salida de carácter sucesiva. Cada atributo dado en la línea puede ser
antepuesto por un + establecer o un - para desarmar ese atributo; + se asume si está ausente.
Los atributos soportados son parpadear, , oscuro, marcha atrás, destacadoy subrayar.
Cada fg_col/bg_col atributo (para ser leído como `fg_col on bg_col') establece el primer plano
y color de fondo para la salida de caracteres. El color tu préstamo estudiantil es a veces
disponible (en particular si la biblioteca es ncurses), especificando el primer plano o
color de fondo con el que arrancó el terminal. el par de colores predeterminado / predeterminado
está siempre disponible.
bg anula el color y otros atributos de todos los caracteres en la ventana. Su
el uso habitual es establecer el fondo inicialmente, pero sobrescribirá los atributos
de cualquier carácter en el momento en que se llama. Además de los argumentos
permitido con attr, un argumento @tanque especifica un carácter que se mostrará en otro caso
áreas en blanco de la ventana. Debido a las limitaciones de las maldiciones esto no puede ser un
carácter multibyte (se recomienda el uso de caracteres ASCII solamente). como el
conjunto especificado de atributos anula el fondo existente, convirtiendo los atributos
off en los argumentos no es útil, aunque esto no provoca un error.
El subcomando mover se puede utilizar con on or off para activar o desactivar el desplazamiento de
una ventana cuando el cursor se movería debajo de la ventana debido a escribir o
producción. También se puede utilizar con un número entero positivo o negativo para desplazar el
ventana hacia arriba o hacia abajo el número dado de líneas sin cambiar el cursor actual
posición (que por lo tanto parece moverse en la dirección opuesta en relación con la
ventana). En el segundo caso, si el desplazamiento es off se convierte temporalmente on a
permitir que la ventana se desplace.
El subcomando Las opciones de entrada lee un solo carácter de la ventana sin repetirlo
espalda. Si detener se proporciona el carácter se asigna al parámetro detener, demás
se asigna al parámetro RESPUESTA.
Si ambos detener y kparam se suministran, la clave se lee en modo 'teclado'. En esto
teclas especiales de modo, como teclas de función y teclas de flecha, devuelven el nombre de la tecla
en el parámetro kparam. Los nombres clave son las macros definidas en el maldiciones.h or
ncurses.h con el prefijo `CLAVE_' eliminado; ver también la descripción del parámetro
zcurses_keycodes debajo. Otras teclas hacen que se establezca un valor en detener como antes. Sobre
una devolución exitosa solo uno de detener or kparam contiene una cadena no vacía; el
otro se establece en una cadena vacía.
If param también se suministra, Las opciones de entrada intenta manejar la entrada del mouse. Esto es sólo
disponible con la biblioteca ncurses; el manejo del ratón se puede detectar comprobando
el estado de salida de `maldiciones ratón' sin argumentos. Si se hace clic en un botón del ratón
(o doble o triple clic, o presionado o soltado con un retraso configurable
de hacer clic) entonces kparam se establece en la cadena RATÓNy param se establece en un
array formado por los siguientes elementos:
- Un identificador para discriminar diferentes dispositivos de entrada; esto es rara vez
útil.
- Las coordenadas x, y y z del clic del mouse en relación con la pantalla completa,
como tres elementos en ese orden (es decir, la coordenada y es, inusualmente, después
la coordenada x). La coordenada z solo está disponible para algunos casos inusuales.
dispositivos de entrada y, de lo contrario, se establece en cero.
- Cualquier evento que haya ocurrido como elementos separados; por lo general habrá sólo uno.
Un evento consiste en PRESIONADO, LIBERADO, HACE CLIC, DOBLE_CLICKED or
TRIPLE_CLIC seguido inmediatamente (en el mismo elemento) por el número de
el botón.
- Si se presionó la tecla shift, la cadena BASICO.
- Si se presionó la tecla de control, la cadena CTRL.
- Si se presionó la tecla alt, la cadena ALT.
No todos los eventos del mouse se pueden pasar a través de la ventana del terminal; la mayoría de terminales
los emuladores manejan algunos eventos del mouse por sí mismos. Tenga en cuenta que el manual de ncurses
implica que el uso de la entrada con y sin manejo del mouse puede hacer que el mouse
cursor para aparecer y desaparecer.
El subcomando ratón se puede utilizar para configurar el uso del ratón. No hay
argumento de ventana; Las opciones del mouse son globales. `maldiciones ratón' sin argumentos
devuelve el estado 0 si el manejo del mouse es posible, de lo contrario el estado 1. De lo contrario, el
Los argumentos posibles (que se pueden combinar en la misma línea de comando) son los siguientes.
retrasar número establece el retraso máximo en milisegundos entre los eventos de pulsación y liberación
ser considerado como un clic; el valor 0 desactiva la resolución de clics y el valor predeterminado
es un sexto de segundo. movimiento precedido por un ` opcional+' (predeterminado) o -
activa o desactiva el informe del movimiento del ratón además de clics, pulsaciones y
liberaciones, que siempre se informan. Sin embargo, aparece informes para el movimiento del mouse.
actualmente no están implementados.
El subcomando tiempo de espera especifica un valor de tiempo de espera para la entrada de objetivoganar. Si
intervalo es negativo, `maldiciones Las opciones de entrada' espera indefinidamente a que se escriba un carácter;
este es el valor predeterminado. Si intervalo es cero, `maldiciones Las opciones de entrada' regresa inmediatamente; Si
hay escritura anticipada, se devuelve, de lo contrario, no se realiza ninguna entrada y se devuelve el estado 1.
If intervalo es positivo, `maldiciones Las opciones de entradaespera intervalo milisegundos para la entrada y si
no hay ninguno al final de ese período devuelve el estado 1.
El subcomando consultachar consulta el carácter en la posición actual del cursor. El
los valores devueltos se almacenan en la matriz denominada detener si se proporciona, de lo contrario en la matriz
responder. El primer valor es el carácter (que puede ser un carácter multibyte si el
el sistema los apoya); el segundo es el par de colores en el habitual fg_col/bg_col
notación, o 0 si el color no es compatible. Cualquier otro atributo que no sea el color que
aplicar al carácter, como se establece con el subcomando attr, aparecen como adicionales
elementos.
parámetros
ZCURSES_COLORS
Entero de solo lectura. El número máximo de colores que admite el terminal. Este valor
es inicializado por la biblioteca curses y no está disponible hasta la primera vez
maldiciones init se ejecuta.
ZCURSES_COLOR_PARES
Entero de solo lectura. El número máximo de pares de colores. fg_col/bg_col podría ser
definido en `maldiciones attr'comandos; tenga en cuenta que este límite se aplica a todos los pares de colores que
han sido utilizados ya sea que estén activos o no. Este valor se inicializa
por la biblioteca curses y no está disponible hasta la primera vez maldiciones init is
huye.
zcurses_attrs
Matriz de solo lectura. Los atributos soportados por zsh/maldiciones; disponible tan pronto como el
El módulo está cargado.
zcurses_colores
Matriz de solo lectura. Los colores soportados por zsh/maldiciones; disponible tan pronto como el
El módulo está cargado.
zcurses_keycodes
Matriz de solo lectura. Los valores que se pueden devolver en el segundo parámetro proporcionado
a 'maldiciones Las opciones de entrada' en el orden en que están definidos internamente por curses.
No se enumeran todas las teclas de función, solo F0; las maldiciones reservan espacio para F0 hasta F63.
zcurses_windows
Matriz de solo lectura. La lista actual de ventanas, es decir, todas las ventanas que se han
creado con `maldiciones añadirwin' y no eliminado con `maldiciones Delwin'.
EL ZSH/FECHA HORA MÓDULO
La zsh / datetime El módulo pone a disposición un comando integrado:
Strftime [ -s escalar ] formato época
Strftime -r [ -q ] [ -s escalar ] formato cadena de tiempo
Muestra la fecha indicada por época en la categoría Industrial. formato especificado. Ver Strftime(3) para
detalles. Las extensiones zsh descritas en la sección EXPANSIÓN DE SECUENCIAS PROMPT
in zshmisc(1) también están disponibles.
-q Corre en silencio; suprimir la impresión de todos los mensajes de error descritos a continuación.
Errores por inválido época los valores siempre se imprimen.
-r Con la opcion -r (reversa), uso formato para analizar la cadena de entrada
cadena de tiempo y mostrar el número de segundos desde la época en la que el
tiempo ocurrido. El análisis es implementado por la función del sistema. tiempo de espera;
ver tiempo de espera(3). Esto significa que las extensiones de formato zsh no están disponibles,
pero para la búsqueda inversa no son necesarios.
En la mayoría de las implementaciones de Strftime cualquier zona horaria en el cadena de tiempo is
ignorado y la zona horaria local declarada por el TZ la variable de entorno es
usado; otros parámetros se establecen en cero si no están presentes.
If cadena de tiempo no coincide formato el comando devuelve el estado 1 e imprime
un mensaje de error Si cadena de tiempo cerillas formato pero no todos los personajes en
cadena de tiempo fueron utilizados, la conversión tiene éxito pero también imprime un error
mensaje.
Si alguno de los sistemas funciona tiempo de espera or tiempo mk no está disponible,
se devuelve el estado 2 y se imprime un mensaje de error.
-s escalar
Asigne la cadena de fecha (o tiempo de época en segundos si -r se da) a escalar
en lugar de imprimirlo.
Tenga en cuenta que dependiendo del tipo de tiempo integral declarado del sistema, Strftime pueden
producir resultados incorrectos para tiempos de época superiores a 2147483647 que corresponde
to 2038-01-19 03:14:07 +0000.
La zsh / datetime módulo pone a disposición varios parámetros; todos son de solo lectura:
ÉPOCA HORA
Un valor de punto flotante que representa el número de segundos desde la época. El
precisión teórica es de nanosegundos si el reloj_gettime la llamada está disponible y para
microsegundos de lo contrario, pero en la práctica el rango de flotación de doble precisión
las latencias de programación de punto y shell pueden ser efectos significativos.
ÉPOCAS SEGUNDOS
Un valor entero que representa el número de segundos desde la época.
época
Un valor de matriz que contiene el número de segundos desde la época en el primer
elemento y el resto del tiempo desde la época en nanosegundos en el segundo
elemento. Para garantizar que los dos elementos sean consistentes, la matriz debe copiarse o
de lo contrario, se hace referencia como una única sustitución antes de que se utilicen los valores. El
se puede usar el siguiente modismo:
for segundos nsegs in $época; do
...
done
EL ZSH/DB/GDBM MÓDULO
La zsh/db/gdbm El módulo se utiliza para crear matrices asociativas "atadas" que interactúan con
archivos de base de datos. Si la interfaz GDBM no está disponible, los componentes definidos por este
módulo informará de un error. Este módulo también pretende ser un prototipo para crear
interfaces de bases de datos adicionales, por lo que ztie builtin puede pasar a un módulo más genérico en
el futuro.
Los componentes de este módulo son:
ztie -d base de datos/gdbm -f nombre de archivo [ -r ] nombre de matriz
Abra la base de datos GDBM identificada por nombre de archivo y, si tiene éxito, crear el
matriz asociativa nombre de matriz vinculado al archivo. Para crear una matriz atada local, el
primero se debe declarar el parámetro, por lo que los comandos similares a los siguientes serían
ejecutado dentro del alcance de una función:
local -A muestreadob
ztie -d base de datos/gdbm -f muestra.gdbm muestreadob
La -r La opción abre el archivo de la base de datos solo para lectura, creando un parámetro con
el atributo de solo lectura. Sin esta opción, usando `ztie' en un archivo para el cual el
el usuario no tiene permiso de escritura es un error. Si se puede escribir, la base de datos es
abrió sincrónicamente, por lo que los campos cambiaron en nombre de matriz se escriben inmediatamente a
nombre de archivo.
Cambios en los modos de archivo nombre de archivo una vez abierto no altera el estado
of nombre de matriz, pero `compilado -r nombre de matriz' funciona como se esperaba.
zuñito [ -u ] nombre de matriz ...
Cierre la base de datos GDBM asociada con cada nombre de matriz y luego desarmar el
parámetro. los -u La opción fuerza un conjunto de parámetros hechos de solo lectura con `ztie
-r'.
Esto sucede automáticamente si el parámetro no se establece explícitamente o su alcance local
(función) termina. Tenga en cuenta que un parámetro de solo lectura no se puede anular explícitamente, por lo que
la única manera de desarmar un parámetro global creado con `ztie -r' es usar `zuñito
-u'.
Los campos de una matriz asociativa vinculada a GDBM no se almacenan en caché ni se almacenan de otra manera en
memoria, se leen o se escriben en la base de datos en cada referencia. Así, por
ejemplo, los valores en una matriz de solo lectura pueden ser cambiados por un segundo escritor del mismo
archivo de base de datos.
EL ZSH/DELTOCHAR MÓDULO
La zsh/deltochar El módulo pone a disposición dos funciones ZLE:
eliminar-a-char
Lea un carácter del teclado y elimínelo desde la posición del cursor hasta y
incluyendo el siguiente (o, con el conteo de repeticiones n, el nth) instancia de ese personaje.
Los recuentos de repeticiones negativos significan eliminar hacia atrás.
zap-to-char
Esto se comporta como eliminar-a-char, excepto que la aparición final del carácter
en sí no se elimina.
EL ZSH/EJEMPLO MÓDULO
La zsh/ejemplo El módulo pone a disposición un comando integrado:
(aqui) [ -banderas ] [ args ...]
Muestra las banderas y los argumentos con los que se invoca.
El propósito del módulo es servir como ejemplo de cómo escribir un módulo.
EL ZSH/ARCHIVOS MÓDULO
La zsh / archivos El módulo pone a disposición algunos comandos comunes para la manipulación de archivos como
empotrados; estos comandos probablemente no sean necesarios para muchas situaciones normales, pero pueden ser
útil en situaciones de recuperación de emergencia con recursos limitados. Los comandos no
implementar todas las características ahora requeridas por los comités de estándares relevantes.
Para todos los comandos, una variante que comienza zf_ también está disponible y se carga automáticamente.
El uso de la capacidad de funciones de zmodload le permitirá cargar solo los nombres que desee.
Tenga en cuenta que es posible cargar solo los componentes con nombres específicos de zsh usando el
siguiente comando:
zmodcargar -m -F zsh / archivos b:zf_\*
Los comandos cargados por defecto son:
chgrp [ -horas ] grupo de XNUMX nombre de archivo ...
Cambia el grupo de archivos especificado. Esto es equivalente a chown con especificación de usuario
argumento de `:grupo de XNUMX'.
chown [ -horas ] especificación de usuario nombre de archivo ...
Cambia la propiedad y el grupo de archivos especificado.
La especificación de usuario puede ser de cuatro formas:
usuario cambiar de dueño a usuario; no cambies de grupo
usuario:: cambiar de dueño a usuario; no cambies de grupo
usuario: cambiar de dueño a usuario; cambiar de grupo a usuariogrupo principal de
usuario:grupo de XNUMX
cambiar de dueño a usuario; cambiar de grupo a grupo de XNUMX
:grupo de XNUMX no cambies de dueño; cambiar de grupo a grupo de XNUMX
En cada caso, el `:' puede ser en cambio un `.'. La regla es que si hay un `:'
entonces el separador es `:', de lo contrario, si hay un `.' entonces el separador es `.',
de lo contrario no hay separador.
Cada uno de usuario y grupo de XNUMX puede ser un nombre de usuario (o nombre de grupo, según corresponda) o
un ID de usuario decimal (ID de grupo). La interpretación como un nombre tiene prioridad, si hay
es un nombre de usuario totalmente numérico (o nombre de grupo).
Si el objetivo es un enlace simbólico, el -h causas de la opción chown establecer la propiedad
del enlace en lugar de su destino.
La -R causas de la opción chown para descender recursivamente a los directorios, cambiando el
propiedad de todos los archivos en el directorio después de cambiar la propiedad del
directorio en sí.
La -s opción es una extensión zsh para chown funcionalidad. Permite paranoico
comportamiento, destinado a evitar problemas de seguridad que impliquen un chown siendo engañado en
afectando a ficheros distintos de los previstos. Se negará a seguir simbólica
enlaces, de modo que (por ejemplo) ``chown luser /tmp/foo/contraseña'' no puede accidentalmente
chown / Etc / passwd if / tmp / foo pasa a ser un enlace a / Etc. también comprobará
dónde está después de salir de los directorios, de modo que un chown recursivo de un profundo
el árbol de directorios no puede terminar chowning recursivamente / usr como resultado de los directorios
ser subido al árbol.
ln [ -dfhins ] nombre de archivo dest
ln [ -dfhins ] nombre de archivo ... dir
Crea duro (o, con -s, simbólicos). En la primera forma, el especificado
destse crea la inación, como un enlace a la especificada nombre de archivo. En la segunda forma,
cada una de las nombre de archivos se toma a su vez y se vincula a un nombre de ruta en el especificado
directory que tiene el mismo último componente de nombre de ruta.
Normalmente, ln no intentará crear enlaces duros a directorios. Este cheque puede
anularse usando el -d opción. Por lo general, solo el superusuario puede realmente
tener éxito en la creación de enlaces duros a los directorios. Esto no se aplica a los símbolos.
enlaces en cualquier caso.
Por defecto, los archivos existentes no pueden ser reemplazados por enlaces. El -i La opción causa la
se le consultará al usuario sobre la sustitución de archivos existentes. El -f opción causa existente
archivos que se eliminarán silenciosamente, sin consultar. -f toma precedencia.
La -h y -n las opciones son idénticas y ambas existen por compatibilidad; cualquiera de los dos
indica que si el objetivo es un enlace simbólico, entonces no se debe quitar la referencia.
Por lo general, esto se usa en combinación con -sf de modo que si un enlace existente apunta
a un directorio, entonces será eliminado, en lugar de seguido. Si esta opción es
se utiliza con varios nombres de archivo y el objetivo es un enlace simbólico que apunta a un
directorio entonces el resultado es un error.
mkdir [ -p ] [ -m modo ] dir ...
Crea directorios. Con el -p opción, los directorios principales no existentes son los primeros
creado si es necesario, y no habrá queja si el directorio ya
existe. los -m La opción se puede usar para especificar (en octal) un conjunto de permisos de archivo
para los directorios creados, de lo contrario el modo 777 modificado por el actual umask (consulta:
umask(2)).
mv [ -fi ] nombre de archivo dest
mv [ -fi ] nombre de archivo ... dir
Mueve archivos. En la primera forma, el especificado nombre de archivo se mueve al especificado
destinación En la segunda forma, cada uno de los nombre de archivos se toma a su vez y se mueve
a un nombre de ruta en el especificado directory que tiene el mismo último componente de nombre de ruta.
De forma predeterminada, se consultará al usuario antes de reemplazar cualquier archivo que el usuario no pueda
escribir, pero los archivos grabables se eliminarán silenciosamente. El -i La opción causa la
se le preguntará al usuario sobre la sustitución de cualquier archivo existente. El -f opción causa cualquier
archivos existentes para ser borrados silenciosamente, sin consultas. -f toma precedencia.
Tenga en cuenta que este mv no moverá archivos entre dispositivos. Versiones históricas de mv,
cuando el cambio de nombre real es imposible, recurra a copiar y eliminar archivos; Si
este comportamiento es el deseado, use cp y rm a mano. Esto puede cambiar en un futuro
versión.
rm [ -dfirs ] nombre de archivo ...
Elimina los archivos y directorios especificados.
Normalmente, rm no eliminará directorios (excepto con el -r opción). los -d
causas de la opción rm para intentar eliminar directorios con desconectar (consulta: desconectar(2)), el mismo
método utilizado para los archivos. Por lo general, solo el superusuario puede realmente tener éxito en
desvincular directorios de esta manera. -d tiene prioridad sobre -r.
De forma predeterminada, se consultará al usuario antes de eliminar cualquier archivo que el usuario no pueda
escribir, pero los archivos grabables se eliminarán silenciosamente. El -i La opción causa la
se le preguntará al usuario sobre la eliminación de cualquier archivo. El -f opción hace que los archivos sean
elimina silenciosamente, sin consultar, y suprime todas las indicaciones de error. -f toma
precedencia.
La -r causas de la opción rm para descender recursivamente a los directorios, eliminando todos los archivos
en el directorio antes de eliminar el directorio con el rmdir llamada al sistema (ver
rmdir(2)).
La -s opción es una extensión zsh para rm funcionalidad. Permite paranoico
comportamiento, destinado a evitar problemas de seguridad comunes relacionados con una ejecución de root rm "Ser"
engañado para eliminar archivos distintos a los previstos. Se negará a seguir
enlaces simbólicos, de modo que (por ejemplo) ``rm /tmp/foo/contraseña'' no puede accidentalmente
remove / Etc / passwd if / tmp / foo pasa a ser un enlace a / Etc. también comprobará
dónde está después de salir de los directorios, de modo que una eliminación recursiva de un
el árbol de directorios no puede terminar eliminando recursivamente / usr como resultado de los directorios
ser subido al árbol.
rmdir dir ...
Elimina los directorios vacíos especificados.
sincronizar Llama a la llamada del sistema del mismo nombre (ver sincronizar(2)), que limpia los búferes sucios
al disco Puede volver antes de que se haya completado realmente la E/S.
EL ZSH/LANGINFO MÓDULO
La zsh/langinfo El módulo pone a disposición un parámetro:
información de idioma
Una matriz asociativa que asigna elementos langinfo a sus valores.
Su implementación puede admitir varias de las siguientes claves:
CONJUNTO DE CÓDIGOS, D_T_FMT, D_FMT, T_FMT, RADIXCHAR, CASA, SÍEXPR, NOEXPR, CRNCYSTR,
ABDAY_ {1..7}, DÍA_{1..7}, ABMON_ {1..12}, LUN_{1..12}, T_FMT_AMPM, AM_STR, PM_STR,
SEGUROS, ERA_D_FMT, ERA_D_T_FMT, ERA_T_FMT, ALT_DIGITOS
EL ZSH/MAPFILE MÓDULO
La zsh / mapfile El módulo proporciona un parámetro de matriz asociativo especial del mismo nombre.
archivo de mapa
Esta matriz asociativa toma como claves los nombres de los archivos; el valor resultante es el
contenido del archivo. El valor se trata de forma idéntica a cualquier otro texto que venga
de un parámetro. El valor también puede asignarse a, en cuyo caso el archivo en
la pregunta está escrita (existiera o no originalmente); o un elemento puede ser
unset, que eliminará el archivo en cuestión. Por ejemplo, `variado
mapfile[miarchivo]' funciona como se esperaba, editando el archivo `mi archivo'.
Cuando se accede a la matriz como un todo, las claves son los nombres de los archivos en el
directorio actual y los valores están vacíos (para ahorrar una gran sobrecarga en la memoria).
Así ${(k)archivo de mapas} tiene el mismo efecto que el operador global *(D), desde archivos
que comienzan con un punto no son especiales. Hay que tener cuidado con expresiones como
rm ${(k)archivo de mapas}, que eliminará todos los archivos del directorio actual sin la
habitual `rm *' prueba.
El parámetro archivo de mapa puede hacerse de solo lectura; en ese caso, es posible que los archivos a los que se hace referencia no
escribirse o borrarse.
Un archivo puede leerse convenientemente en una matriz como una línea por elemento con la forma
`matriz=("${(f@)mapaarchivo[nombre de archivo]}")'. Las comillas dobles y el `@' son necesarios
para evitar que se eliminen líneas vacías. Tenga en cuenta que si el archivo termina con un
nueva línea, el caparazón se dividirá en la última línea nueva, generando un vacío adicional
campo; esto se puede suprimir usando
`matriz=("${(f@)${archivo de mapa[nombre de archivo]%$'\n'}}")'.
Limitaciones
Aunque la lectura y escritura del archivo en cuestión se maneja de manera eficiente, zsh's
la gestión de la memoria interna puede ser arbitrariamente barroca; sin embargo, archivo de mapa suele ser muy
mucho más eficiente que cualquier cosa que implique un bucle. Nótese en particular que la totalidad
El contenido del archivo siempre residirá físicamente en la memoria cuando se acceda a él (posiblemente
varias veces, debido a las operaciones estándar de sustitución de parámetros). En particular, este
significa el manejo de archivos suficientemente largos (mayores que el espacio de intercambio de la máquina, o que
el rango del tipo de puntero) será incorrecto.
No se imprimen ni marcan errores para archivos inexistentes, ilegibles o no escribibles, ya que
El mecanismo de parámetro es demasiado bajo en la jerarquía de ejecución de shell para que esto sea conveniente.
Es lamentable que el mecanismo de carga de módulos aún no permita al usuario
especifique el nombre del parámetro de shell al que se le dará el comportamiento especial.
EL ZSH/MATHFUN MÓDULO
La zsh / mathfunc módulo proporciona funciones matemáticas estándar para su uso al evaluar
fórmulas matemáticas. La sintaxis concuerda con las convenciones normales de C y FORTRAN, por
ejemplo,
(( f = pecado (0.3) ))
asigna el seno de 0.3 al parámetro f.
La mayoría de las funciones toman argumentos de coma flotante y devuelven un valor de coma flotante. Sin embargo,
cualquier conversión necesaria de o a tipo entero será realizada automáticamente por el
cáscara. Aparte de un bronceado con un segundo argumento y el abs, int y flotar funciones, todas
funciones se comportan como se indica en la página del manual para la función C correspondiente, excepto que
cualquier argumento fuera de rango para la función en cuestión será detectado por el shell y
un error reportado.
Las siguientes funciones toman un solo argumento de punto flotante: acos, acosh, como en, asinh,
un bronceado, atanh, cbrt, ceil, carro, cosh, propiedad, erfc, exp, exp1, fábricas, piso, gama, j0, j1,
lgamma, log, log10, registro1p, registro, el pecado, nacido, sqrt, broncearse, bronceado, y0, y1. un bronceado función
opcionalmente puede tomar un segundo argumento, en cuyo caso se comporta como la función C atan2.
La ilogb La función toma un solo argumento de coma flotante, pero devuelve un número entero.
La función firmar no toma argumentos y devuelve un número entero, que es la variable C
del mismo nombre, como se describe en gama(3). Tenga en cuenta que, por lo tanto, solo es útil
inmediatamente después de una llamada a gama or lgamma. Tenga en cuenta también que `firmar()'y'firmar' están
expresiones distintas.
Las siguientes funciones toman dos argumentos de coma flotante: copia firmante, fmod, hipo,
siguiente.
Lo siguiente toma un primer argumento entero y un segundo argumento de coma flotante: jn, yn.
Lo siguiente toma un primer argumento de punto flotante y un segundo argumento entero: ldexp,
costillar.
La función abs no convierte el tipo de su único argumento; devuelve el absoluto
valor de un número de coma flotante o de un entero. Las funciones flotar y int
convertir sus argumentos en un punto flotante o un valor entero (por truncamiento)
respectivamente.
Tenga en cuenta que la C prisionero de guerra está disponible en la evaluación matemática ordinaria como `**' operador
y no se proporciona aquí.
La función rand48 está disponible si la biblioteca matemática de su sistema tiene la función
erand48(3). Devuelve un número de punto flotante pseudoaleatorio entre 0 y 1. Toma un
Argumento opcional de una sola cadena.
Si el argumento no está presente, la semilla del número aleatorio se inicializa mediante tres llamadas a
de la forma más rand(3) función --- esto produce los mismos números aleatorios que los siguientes tres valores de
$ AL AZAR.
Si el argumento está presente, da el nombre de un parámetro escalar donde el actual
Se almacenará la semilla de número aleatorio. En la primera llamada, el valor debe contener al menos
doce dígitos hexadecimales (el resto de la cadena se ignora), o la semilla será
inicializado de la misma manera que para una llamada a rand48 sin argumento. Llamadas posteriores
a rand48(detener) luego mantendrá la semilla en el parámetro detener como una cadena de doce
dígitos hexadecimales, sin significante base. Las secuencias de números aleatorios para diferentes
Los parámetros son completamente independientes, y también son independientes de los utilizados por las llamadas a
rand48 sin argumento.
Por ejemplo, considere
Imprimir PS rand48 (semilla) ))
Imprimir PS rand48() ))
Imprimir PS rand48 (semilla) ))
Asumiendo $ semilla no existe, será inicializado por la primera llamada. En el segundo
call, se inicializa la semilla predeterminada; Tenga en cuenta, sin embargo, que debido a las propiedades de
rand () existe una correlación entre las semillas utilizadas para las dos inicializaciones, por lo que para
usos más seguros, debe generar su propia semilla de 12 bytes. La tercera llamada vuelve a
la misma secuencia de números aleatorios utilizados en la primera llamada, sin verse afectada por la intervención
rand48().
EL ZSH/NUEVOUSUARIO MÓDULO
La zsh / newuser el módulo se carga en el arranque si está disponible, el RCS se establece la opción y
de la forma más PRIVILEGIADO La opción no está configurada (las tres son verdaderas de forma predeterminada). esto tiene lugar
inmediatamente después de los comandos en el global zshenv archivo (normalmente / etc / zshenv), en su caso, tener
sido ejecutado. Si el módulo no está disponible, el shell lo ignora silenciosamente; el
El módulo se puede quitar con seguridad de $MODULE_PATH por el administrador si no es requerido.
Al cargar, el módulo comprueba si alguno de los archivos de inicio .zshenv, .zperfil, .zshrc or
.zlogin existe en el directorio dado por la variable de entorno ZDOTDIR, o del usuario
directorio de inicio si no está configurado. La prueba no se realiza y el módulo se detiene.
procesamiento si el shell estaba en un modo de emulación (es decir, se había invocado como algún otro
shell que zsh).
Si no se encuentra ninguno de los archivos de inicio, el módulo busca el archivo newuser first
en un directorio de todo el sitio, generalmente el directorio principal del funciones del sitio directorio, y
si no se encuentra, el módulo busca en un directorio específico de la versión, generalmente el
padre del funciones directorio que contiene funciones específicas de la versión. (Estos
Los directorios se pueden configurar cuando zsh se construye usando el --enable-sitio-scriptdir=dir y
--enable-scriptdir=dir banderas a configurar, respectivamente; los valores predeterminados son prefijo/compartir/zsh
y prefijo/share/zsh/$ZSH_VERSION donde el valor predeterminado prefijo is / usr / local.)
Si el archivo newuser se encuentra, luego se obtiene de la misma manera que un archivo de inicio.
Se espera que el archivo contenga código para instalar archivos de inicio para el usuario, sin embargo, cualquier
se ejecutará un código de shell válido.
La zsh / newuser Entonces, el módulo se descarga incondicionalmente.
Tenga en cuenta que es posible lograr exactamente el mismo efecto que el zsh / newuser módulo por
añadiendo código a / etc / zshenv. El módulo existe simplemente para permitir que el shell haga
arreglos para nuevos usuarios sin la necesidad de la intervención de los mantenedores del paquete y
administradores de sistemas.
El script proporcionado con el módulo invoca la función de shell zsh-nuevo-usuario-instalar. Esto
puede ser invocado directamente por el usuario incluso si el zsh / newuser el módulo está deshabilitado. Nota,
sin embargo, que si no se instala el módulo tampoco se instalará la función.
La función está documentada en la sección Funciones de configuración de usuario en zshcontrib(1).
EL ZSH/PARÁMETRO MÓDULO
La zsh / parámetro módulo da acceso a algunas de las tablas hash internas utilizadas por el
shell definiendo algunos parámetros especiales.
opciones
Las claves para esta matriz asociativa son los nombres de las opciones que se pueden configurar
y desarmar usando el setop y desarraigado incorporados El valor de cada clave es
la cuerda on si la opción está configurada actualmente, o la cadena off si la opcion es
desarmado Establecer una clave para una de estas cadenas es como establecer o desactivar la
opción, respectivamente. Anular la configuración de una clave en esta matriz es como establecerla en el valor
off.
comandos
Esta matriz da acceso a la tabla hash de comandos. Las claves son los nombres de
comandos externos, los valores son los nombres de ruta de los archivos que se ejecutarían
cuándo se invocaría el comando. Establecer una clave en esta matriz define una nueva entrada
en esta tabla de la misma manera que con el hachís incorporado. Desarmar una tecla como en
`desarmado "comandos[foo]"' elimina la entrada para la clave dada del comando hash
mesa.
funciones
Esta matriz asociativa asigna nombres de funciones habilitadas a sus definiciones.
Establecer una clave en él es como definir una función con el nombre dado por la clave y
el cuerpo dado por el valor. Desarmar una clave elimina la definición de la
función nombrada por la clave.
dis_funciones
Como funciones pero para funciones deshabilitadas.
construidos
Esta matriz asociativa brinda información sobre los comandos incorporados actualmente
activado. Las claves son los nombres de los comandos incorporados y los valores son
`indefinido' para comandos integrados que se cargarán automáticamente desde un módulo si
invocado o `se define' para comandos integrados que ya están cargados.
des_construidos
Como construidos pero para comandos integrados deshabilitados.
respuestas
Esta matriz contiene las palabras reservadas habilitadas.
dis_reswords
Como respuestas pero para palabras reservadas deshabilitadas.
parchear
Esta matriz contiene los caracteres de patrón habilitados.
dis_patchars
Como parchear pero para caracteres de patrón deshabilitados.
alias
Esto asigna los nombres de los alias regulares actualmente habilitados a sus expansiones.
dis_aliases
Como alias pero para alias regulares deshabilitados.
galias
Como alias, pero para alias globales.
dis_galiases
Como galias pero para alias globales deshabilitados.
salias
Como ralias, pero para alias de sufijo.
dis_saliases
Como salias pero para alias de sufijo deshabilitado.
parámetros
Las claves en esta matriz asociativa son los nombres de los parámetros actualmente
definido. Los valores son cadenas que describen el tipo del parámetro, en el mismo
formato utilizado por el t indicador de parámetro, consulte zshexn(1) . Armar o desarmar llaves en
esta matriz no es posible.
módulos
Una matriz asociativa que proporciona información sobre los módulos. Las claves son los nombres de
los módulos cargados, registrados para carga automática o alias. El valor dice cual
estado en el que se encuentra el módulo nombrado y es una de las cadenas `cargado', `autocargado'o
`alias:nombre ', dónde nombre es el nombre con el que se crea el alias del módulo.
No es posible configurar o desactivar claves en esta matriz.
pila de basura
Una matriz normal que contiene los elementos de la pila de directorios. Tenga en cuenta que la salida de
de la forma más dirs El comando integrado incluye un directorio más, el directorio de trabajo actual.
directorio.
historia
Esta matriz asociativa asigna números de eventos de historial a las líneas de historial completas.
palabras de historia
Una matriz especial que contiene las palabras almacenadas en el historial.
puestos de trabajo
Esta matriz asociativa asigna números de trabajo a los directorios desde los que se originó el trabajo.
iniciado (que puede no ser el directorio actual del trabajo).
Las claves de las matrices asociativas suelen ser números de trabajo válidos, y estos son los
salida de valores con, por ejemplo, ${(k)directorios de trabajo}. Las referencias de trabajo no numéricas pueden ser
se usa al buscar un valor; por ejemplo, ${carpetas[%+]} se refiere a la corriente
trabajo.
textos de trabajo
Esta matriz asociativa asigna números de trabajo a los textos de las líneas de comando que fueron
utilizado para iniciar los trabajos.
El manejo de las claves de la matriz asociativa es como se describe para puestos de trabajo anterior.
estados de trabajo
Esta matriz asociativa brinda información sobre los estados de los trabajos actualmente.
conocido. Las claves son los números de trabajo y los valores son cadenas de la forma
`trabajo-estado:marca:pid=estado...'. El trabajo-estado le da al estado todo el trabajo es
actualmente en, uno de `correr', `suspendido', o'done'. los marca es+' Para el
trabajo actual, `-' para el trabajo anterior y vacío en caso contrario. Esto es seguido por uno
`:pid=estado' para cada proceso en el trabajo. El pids son, por supuesto, los ID de proceso
y la estado describe el estado de ese proceso.
El manejo de las claves de la matriz asociativa es como se describe para puestos de trabajo anterior.
directorios nombrados
Esta matriz asociativa asigna los nombres de los directorios con nombre a los nombres de ruta que
representar.
directorios de usuario
Esta matriz asociativa asigna nombres de usuario a los nombres de ruta de sus directorios de inicio.
Grupos de Usuarios
Esta matriz asociativa asigna nombres de grupos de sistemas de los cuales el usuario actual es un
miembro a los identificadores de grupo correspondientes. El contenido es el mismo que el
Salida de grupos por el id mando.
funcfiletrace
Esta matriz contiene los números de línea absolutos y los nombres de archivo correspondientes para el
punto donde se encuentra la función actual, el archivo de origen o (si EVAL_LINENO Está establecido) eval
se llamó el mando. La matriz tiene la misma longitud que funcsourcetrace y
seguimiento de funciones, pero difiere de funcsourcetrace en que la línea y el archivo son el punto
de llamada, no el punto de definición, y difiere de seguimiento de funciones en que todos los valores
son números de línea absolutos en los archivos, en lugar de relativos al inicio de un
función, si la hubiere.
funcsourcetrace
Esta matriz contiene los nombres de archivo y los números de línea de los puntos donde
funciones, archivos fuente y (si EVAL_LINENO Está establecido) eval comandos que están siendo actualmente
ejecutados fueron definidos. El número de línea es la línea donde `función nombre 'o
`nombre ()' empezado. En el caso de una función cargada automáticamente, el número de línea es
reportado como cero. El formato de cada elemento es nombre de archivo:lino. Para funciones
autocargado desde un archivo en formato zsh nativo, donde solo el cuerpo de la función
ocurre en el archivo, o para archivos que han sido ejecutados por el fuente o.'
incorporados, la información de seguimiento se muestra como nombre de archivo:0, ya que todo el archivo es
la definición.
La mayoría de los usuarios estarán interesados en la información del funcfiletrace matriz
preferiblemente.
pila de funciones
Esta matriz contiene los nombres de las funciones, los archivos fuente y (si EVAL_LINENO
Está establecido) eval comandos actualmente en ejecución. El primer elemento es el nombre de
la función usando el parámetro.
La matriz de shell estándar zsh_eval_contexto puede utilizarse para determinar el tipo de
construcción de shell que se ejecuta en cada profundidad: tenga en cuenta, sin embargo, que está en el
orden inverso, con el elemento más reciente en último lugar, y es más detallado, por
ejemplo incluyendo una entrada para nivel superior, el código de shell principal se ejecuta
interactivamente o desde un script, que no está presente en $ pila de funciones.
seguimiento de funciones
Esta matriz contiene los nombres y números de línea de las personas que llaman correspondientes a la
funciones que se están ejecutando actualmente. El formato de cada elemento es nombre :lino.
Las personas que llaman también se muestran para los archivos de origen; la persona que llama es el punto donde el fuente
o.' se ejecutó el comando.
EL ZSH/PCRE MÓDULO
La zsh / pcre El módulo hace que algunos comandos estén disponibles como elementos integrados:
pcre_compile [ -aimxs ] PCRE
Compila una expresión regular compatible con Perl.
Opción -a forzará el anclaje del patrón. Opción -i compilará un
patrón que no distingue entre mayúsculas y minúsculas. Opción -m compilará un patrón de varias líneas; es decir, ^
y $ coincidirá con las líneas nuevas dentro del patrón. Opción -x compilará un extenso
patrón, en el que los espacios en blanco y # los comentarios son ignorados. Opción -s hace el punto
metacharacter coincide con todos los caracteres, incluidos los que indican nueva línea.
estudio_pcre
Estudia el PCRE compilado previamente, lo que puede resultar en una coincidencia más rápida.
pcre_match [ -v var ] [ -a arr ] [ -n compensar ] [ -b ] cadena
Devuelve con éxito si cadena coincide con el PCRE compilado previamente.
Tras una coincidencia exitosa, si la expresión captura subcadenas entre paréntesis,
pcre_match establecerá la matriz partido a esas subcadenas, a menos que el -a opción es
dado, en cuyo caso establecerá la matriz arr. Del mismo modo, la variable PARTIDO will
establecerse en la parte coincidente completa de la cadena, a menos que el -v se da la opción,
en cuyo caso la variable var se establecerá. No se altera ninguna variable si hay
ninguna coincidencia exitosa. A -n la opción comienza a buscar una coincidencia desde el byte compensar
posición en cadena. Si el -b se da la opción, la variable ZPCRE_OP se establecerá
a una cadena de pares de desplazamiento, que representa las posiciones de desplazamiento de bytes de todo el
parte coincidente dentro de la cadena.. Por ejemplo, un ZPCRE_OP establecer en "32 45"
indica que la parte coincidente comenzó en el byte de desplazamiento 32 y finalizó en el byte de desplazamiento
44. Aquí, la posición de desplazamiento de bytes 45 es la posición directamente después de la coincidencia
parte. Tenga en cuenta que la posición del byte no es necesariamente la misma que la
posición del carácter cuando se trata de caracteres UTF-8. En consecuencia, el byte
Las posiciones compensadas solo son para confiar en el contexto de su uso para
búsquedas posteriores en cadena, utilizando una posición de desplazamiento como argumento para la -n
opción. Esto se usa principalmente para implementar "buscar todas las coincidencias que no se superponen"
funcionalidad
Un ejemplo simple de "buscar todas las coincidencias que no se superponen":
cadena="El siguiendo Código Postal códigos: 78884 90210 99513"
pcre_compile -m "\d{5}"
acumular=()
pcre_match -b -- $ cadena
mientras [[ $? -eq 0 ]] do
b=($=ZPCRE_OP)
acumular+=$COINCIDIR
pcre_match -b -n $b[2] -- $ cadena
done
Imprimir -l $acum
La zsh / pcre El módulo pone a disposición la siguiente condición de prueba:
expr -pcre-coincidencia pcre
Compara una cadena con una expresión regular compatible con perl.
Por ejemplo,
[[ "$texto" -pcre-coincidencia ^d+$ ]] &&
Imprimir texto variable contiene only "d's".
Si REMATCH_PCRE se establece la opción, el =~ operador es equivalente a -pcre-coincidencia,
y la NO_CASO_COINCIDIR se puede utilizar la opción. Tenga en cuenta que NO_CASO_COINCIDIR nunca se aplica a
de la forma más pcre_match incorporado, en su lugar utilice el -i interruptor de pcre_compile.
EL ZSH/regex MÓDULO
La zsh / regex El módulo pone a disposición la siguiente condición de prueba:
expr -regex-coincidencia expresiones regulares
Compara una cadena con una expresión regular extendida POSIX. En una coincidencia exitosa,
la parte coincidente de la cadena normalmente se colocará en el PARTIDO variable. Si
hay paréntesis de captura dentro de la expresión regular, entonces el partido variable de matriz
contendrá esos. Si la coincidencia no tiene éxito, entonces las variables no serán
alterado.
Por ejemplo,
[[ alfabético -regex-coincidencia ^a([^a]+)a([^a]+)a ]] &&
Imprimir -l $ PARTIDO X $ partido
Si la opcion REMATCH_PCRE no está configurado, entonces el =~ el operador cargará automáticamente
este módulo según sea necesario e invocará el -regex-coincidencia operador.
If BASH_REMATCH se establece, entonces la matriz BASH_REMATCH se establecerá en lugar de PARTIDO
y partido.
EL ZSH/HORARIO MÓDULO
La zsh/programado El módulo pone a disposición un comando integrado y un parámetro.
programar [-o] [+]hh:mm[:ss] comando ...
programar [-o] [+]segundos comando ...
programar [ -ít ]
Haga una entrada en la lista programada de comandos para ejecutar. El tiempo puede ser
especificado en tiempo absoluto o relativo, y ya sea como horas, minutos y
(opcionalmente) segundos separados por dos puntos, o segundos solos. un número absoluto de
segundos indica el tiempo desde la época (1970/01/01 00:00); esto es util en
combinación con las características del zsh / datetime módulo, vea el zsh/datetime
entrada de módulo en módulos zsh(1).
Sin argumentos, imprime la lista de comandos programados. Si el comando programado
tiene la -o conjunto de indicadores, esto se muestra al comienzo del comando.
Con el argumento `-ít', elimina el elemento dado de la lista. La numeración de
la lista es continua y las entradas están en orden de tiempo, por lo que la numeración puede cambiar
cuando se agregan o eliminan entradas.
Los comandos se ejecutan inmediatamente antes de un indicador o mientras la línea del shell
el editor está esperando una entrada. En este último caso, es útil poder producir
salida que no interfiere con la línea que se está editando. Brindando la opción -o
hace que el shell borre la línea de comando antes del evento y la vuelva a dibujar
después. Esto debe usarse con cualquier evento programado que produzca
salida a la terminal; no es necesario, por ejemplo, con una salida que actualice un
barra de título del emulador de terminal.
La programar builtin no está disponible de forma predeterminada cuando el shell se inicia en un modo
emulando otro caparazón. Puede estar disponible con el comando `zmodcargar -F
zsh/programado b:programado'.
zsh_scheduled_events
Una matriz de solo lectura correspondiente a los eventos programados por el programar incorporado. los
índices de la matriz corresponden a los números que se muestran cuando programar se ejecuta sin
argumentos (siempre que el KSH_ARRAYS la opción no está configurada). El valor de la matriz
consiste en el tiempo programado en segundos desde la época (ver la sección `La
zsh/datetime Module' para las facilidades para usar este número), seguido de dos puntos,
seguido de cualquier opción (que puede estar vacía pero estará precedida por un `-'
de lo contrario), seguido de dos puntos, seguido del comando a ejecutar.
La programar Builtin debe usarse para manipular los eventos. Tenga en cuenta que esto
tener un efecto inmediato en el contenido de la matriz, por lo que los índices pueden convertirse
inválido.
EL ZSH/RED/CONECTOR MÓDULO
La zsh / net / socket El módulo pone a disposición un comando integrado:
Zócalo [ -altv ] [ -d fd ] [ args ]
Zócalo se implementa como una función integrada para permitir el uso completo de la línea de comandos de shell
mecanismos de edición, E/S de archivos y control de trabajos.
saliente Conexiones
Zócalo [ -v ] [ -d fd ] nombre de archivo
Abra una nueva conexión de dominio Unix para nombre de archivo. El parámetro de la cáscara RESPUESTA se mostrarán
establecido en el descriptor de archivo asociado con esa conexión. Actualmente, solo transmite
Se admiten conexiones.
If -d se especifica, su argumento se tomará como el descriptor de archivo de destino para
la conexión.
Para obtener una salida más detallada, use -v.
Inbound Conexiones
Zócalo -l [ -v ] [ -d fd ] nombre de archivo
Zócalo -l abrirá un socket escuchando nombre de archivo. El parámetro de la cáscara RESPUESTA
se establecerá en el descriptor de archivo asociado con ese oyente.
If -d se especifica, su argumento se tomará como el descriptor de archivo de destino para
la conexión.
Para obtener una salida más detallada, use -v.
Zócalo -a [ -televisión ] [ -d objetivofd ] escuchar
Zócalo -a aceptará una conexión entrante al socket asociado con
escuchar. El parámetro de la cáscara RESPUESTA se establecerá en el descriptor de archivo asociado
con la conexión entrante.
If -d se especifica, su argumento se tomará como el descriptor de archivo de destino para
la conexión.
If -t está especificado, Zócalo regresará si no hay ninguna conexión entrante pendiente.
De lo contrario, esperará a uno.
Para obtener una salida más detallada, use -v.
EL ZSH/ESTADÍSTICA MÓDULO
La zsh / stat El módulo pone a disposición un comando incorporado bajo dos nombres posibles:
zstat [ -gnNolLtTrs ] [ -f fd ] [ -H hachís ] [ -A matriz ] [ -F fmt ]
[ +elementos ] [ presentar ...]
stat ...
El comando actúa como una interfaz para el stat llamada al sistema (ver stat(2)). Lo mismo
comando se proporciona con dos nombres; como el nombre stat a menudo es utilizado por un externo
comando se recomienda que sólo el zstat se utiliza la forma del comando. Esta
se puede arreglar cargando el módulo con el comando `zmodcargar -F zsh / stat
b:zstat'.
Si stat la llamada falla, se imprime el mensaje de error del sistema apropiado y el estado 1
es regresado. los campos de struct stat dar información sobre los archivos proporcionados
como argumentos al comando. Además de los disponibles en el stat llamar, un
elemento adicional `enlace' está provisto. Estos elementos son:
dispositivo El número del dispositivo en el que reside el archivo.
inode El número único del archivo en este dispositivo (`inode' número).
modo El modo del archivo; es decir, el tipo de archivo y los permisos de acceso. Con
de la forma más -s opción, esto será devuelto como una cadena correspondiente a la primera
columna en la pantalla de la ls -l mando.
enlace El número de enlaces duros al archivo.
UID El ID de usuario del propietario del archivo. Con el -s opción, esto se muestra
como nombre de usuario.
gid El ID de grupo del archivo. Con el -s opción, esto se muestra como un grupo
nombre.
rdev El número de dispositivo sin procesar. Esto solo es útil para dispositivos especiales.
tamaño El tamaño del archivo en bytes.
un momento
mtime
ctime Las horas del último acceso, modificación y cambio de inodo del archivo,
respectivamente, como el número de segundos desde la medianoche GMT del 1 de enero,
1970. Con el -s opción, estos se imprimen como cadenas para la hora local
zona; el formato se puede modificar con el -F opción y con la -g opción
los tiempos están en GMT.
tamaño negro
El número de bytes en un bloque de asignación en el dispositivo en el que se encuentra el archivo.
reside.
bloquear El número de bloques de disco utilizados por el archivo.
enlace Si el archivo es un enlace y el -L la opción está en efecto, esto contiene el nombre
del archivo vinculado, de lo contrario está vacío. Tenga en cuenta que si este elemento es
seleccionado (``zstat +enlace'') entonces la -L La opción se utiliza automáticamente.
Se puede seleccionar un elemento en particular incluyendo su nombre precedido por un `+' en el
lista de opciones; solo se permite un elemento. El elemento se puede acortar a cualquier
conjunto único de personajes principales. De lo contrario, todos los elementos se mostrarán para todos
archivos.
Opciones:
-A matriz
En lugar de mostrar los resultados en la salida estándar, asígnelos a un
matriz, un experto struct stat elemento por elemento de matriz para cada archivo en orden. En
en este caso no aparece ni el nombre del elemento ni el nombre de los archivos
in matriz a menos que el -t or -n se dieron opciones, respectivamente. Si -t is
dado, el nombre del elemento aparece como un prefijo a la matriz apropiada
elemento; Si -n se da, el nombre del archivo aparece como un elemento de matriz separado
precediendo a todos los demás. Se respetan otras opciones de formato.
-H hachís
Similar a -A, pero en su lugar asigna los valores a hachís. Las claves son las
elementos enumerados anteriormente. Si el -n se proporciona la opción entonces el nombre de la
el archivo está incluido en el hash con clave nombre .
-f fd Usar el archivo en el descriptor de archivo fd en lugar de archivos con nombre; sin lista de archivos
nombres está permitido en este caso.
-F fmt Suministra un Strftime (consulta: Strftime(3)) cadena para el formato de la hora
elementos. los -s la opción está implícita.
-g Muestra los elementos de tiempo en la zona horaria GMT. El -s la opción está implícita.
-l Enumere los nombres de los elementos de tipo (a la salida estándar o una matriz como
apropiado) y devolver inmediatamente; opciones distintas a -A y los argumentos son
ignorado
-L Realizar un lstat (consulta: lstat(2)) en lugar de un stat llamada del sistema. En esto
caso, si el archivo es un enlace, la información sobre el propio enlace en lugar de
se devuelve el archivo de destino. Esta opción es necesaria para realizar la enlace
elemento útil. Es importante tener en cuenta que esto es exactamente lo contrario de
ls(1), etc
-n Mostrar siempre los nombres de los archivos. Por lo general, estos solo se muestran cuando la salida es
a la salida estándar y hay más de un archivo en la lista.
-N Nunca mostrar los nombres de los archivos.
-o Si se imprime un modo de archivo sin procesar, muéstrelo en octal, que es más útil para
consumo humano que el valor predeterminado de decimal. Un cero inicial será
impreso en este caso. Tenga en cuenta que esto no afecta si un crudo o
se muestra el modo de archivo formateado, que es controlado por el -r y -s opciones,
ni si se muestra un modo en absoluto.
-r Imprima datos sin procesar (el formato predeterminado) junto con datos de cadena (el -s formato);
los datos de cadena aparecen entre paréntesis después de los datos sin procesar.
-s Imprimir modo, UID, gid y los tres elementos de tiempo como cadenas en lugar de
números. En cada caso el formato es como el de ls -l.
-t Muestre siempre los nombres de tipo para los elementos de struct stat. Por lo general, estos
solo se muestran cuando la salida es la salida estándar y ningún elemento individual
has sido seleccionado.
-T Nunca muestre los nombres de tipo de los struct stat elementos.
EL ZSH/SISTEMA MÓDULO
La zsh / system El módulo pone a disposición varios comandos y parámetros integrados.
Incorporados
error de sistema [ -e errvar ] [ -p prefijo ] [ error | nombre de error ]
Este comando imprime el mensaje de error asociado con error, un error del sistema
número, seguido de una nueva línea al error estándar.
En lugar del número de error, un nombre nombre de error, Por ejemplo ENOENTE, puede ser usado. El
conjunto de nombres es el mismo que el contenido de la matriz error, vea abajo.
Si la cuerda prefijo se da, se imprime delante del mensaje de error, sin
espacio intermedio.
If errvar se proporciona, el mensaje completo, sin una nueva línea, se asigna a la
nombres de parámetros errvar y no sale nada.
Un estado de retorno de 0 indica que el mensaje se imprimió con éxito (aunque
puede no ser útil si el número de error estaba fuera del rango del sistema), una devolución
el estado de 1 indica un error en los parámetros y un estado de retorno de 2
indica que no se reconoció el nombre del error (no se imprime ningún mensaje para esto).
sistema abierto [ -arw ] [ -m permisos ] [ -o opciones ]
-u fd presentar
Este comando abre un archivo. El -r, -w y -a banderas indican si el archivo debe
abrirse para lectura, escritura y anexión, respectivamente. El -m la opción permite
los permisos iniciales para usar al crear un archivo que se especificará en forma octal.
El descriptor de archivo se especifica con -u. O un descriptor de archivo explícito en el
se puede especificar un rango de 0 a 9 o se le puede dar un nombre de variable al que el archivo
se le asignará un número de descriptor.
La -o La opción permite especificar varias opciones específicas del sistema como
lista separada por comas. La siguiente es una lista de posibles opciones. Tenga en cuenta que,
Dependiendo del sistema, algunos pueden no estar disponibles.
cloexec
marcar el archivo para que se cierre cuando se ejecutan otros programas
Para crear
creat crear archivo si no existe
excl crear archivo, error si ya existe
no hay tiempo
suprimir la actualización del archivo a la vez
nofollow
fallar si presentar es un enlace simbólico
sincronizar solicitud que escribe esperar hasta que los datos se hayan escrito físicamente
truncar
trunc truncar el archivo a tamaño 0
Para cerrar el archivo, use uno de los siguientes:
ejecutivo {fd}<&-
ejecutivo {fd}> & -
lectura del sistema [ -c contarvar ] [ -i Infd ] [ -o salida ]
[ -s tamaño buf ] [ -t tiempo de espera ] [ detener ]
Realizar una sola lectura del sistema desde el descriptor de archivo Infd, o cero si eso no es
dado. El resultado de la lectura se almacena en detener or RESPUESTA si eso no se da.
If contarvar se da, el número de bytes leídos se asigna al parámetro llamado
by contarvar.
El número máximo de bytes leídos es tamaño buf o 8192 si eso no se da, sin embargo
el comando regresa tan pronto como se haya leído con éxito cualquier cantidad de bytes.
If tiempo de espera se da, especifica un tiempo de espera en segundos, que puede ser cero para sondear
el descriptor del archivo. Esto es manejado por el encuesta llamada al sistema si está disponible,
de lo contrario el selecciona llamada al sistema si está disponible.
If salida se da, se hace un intento de escribir todos los bytes recién leídos en el archivo
descriptor salida. Si esto falla, debido a un error del sistema que no sea EINTR or
debido a un error zsh interno durante una interrupción, los bytes se leen pero no
escritos se almacenan en el parámetro nombrado por detener si se proporciona (no se utiliza ningún valor predeterminado
en este caso), y el número de bytes leídos pero no escritos se almacena en el
parámetro nombrado por contarvar si eso se suministra. Si tuvo éxito, contarvar
contiene el número total de bytes transferidos, como de costumbre, y detener no está configurado.
El error EINTR (llamada al sistema interrumpida) se maneja internamente para que shell
las interrupciones son transparentes para la persona que llama. Cualquier otro error provoca una devolución.
Los posibles estados de retorno son
0 Al menos un byte de datos se leyó con éxito y, si corresponde,
escrito.
1 Hubo un error en los parámetros del comando. este es el unico error
para el cual se imprime un mensaje con error estándar.
2 Hubo un error en la lectura o en el sondeo del descriptor del archivo de entrada para
un tiempo de espera El parámetro ERROR da el error.
3 Los datos se leyeron correctamente, pero hubo un error al escribirlos en salida.
El parámetro ERROR da el error.
4 Se agotó el tiempo de intento de lectura. Tenga en cuenta que esto no se establece ERROR como esto no es
un error del sistema
5 No se produjo ningún error del sistema, pero se leyeron cero bytes. Esto suele indicar
fin del documento. Los parámetros se establecen de acuerdo con las reglas habituales; sin escribir
a salida se intenta.
búsqueda del sistema [ -u fd ] [ -w comienzo|final|corriente ] compensar
La posición actual del archivo en la que se realizarán futuras lecturas y escrituras es
ajustado al desplazamiento de bytes especificado. El compensar se evalúa como una matemática
expresión. los -u La opción permite especificar el descriptor del archivo. Por defecto
el desplazamiento se especifica en relación con el inicio o el archivo pero, con el -w opción,
es posible especificar que el desplazamiento debe ser relativo a la corriente
posición o el final del archivo.
escritura del sistema [ -c contarvar ] [ -o salida ] datos
Los datos (una sola cadena de bytes) se escriben en el descriptor de archivo salida, O 1
si eso no se da, usando el escribir llamada del sistema. Múltiples operaciones de escritura pueden
ser utilizado si el primero no escribe todos los datos.
If contarvar se da, el número de byte escrito se almacena en el parámetro llamado
by contarvar; esto puede no ser la longitud completa de datos si ocurrió un error.
El error EINTR (llamada al sistema interrumpida) se maneja internamente al volver a intentarlo;
de lo contrario, un error hace que el comando regrese. Por ejemplo, si el archivo
el descriptor está configurado como salida sin bloqueo, un error OTRA VEZ (en algunos sistemas,
BLOQUEO) puede hacer que el comando regrese antes de tiempo.
El estado de retorno puede ser 0 para el éxito, 1 para un error en los parámetros a la
comando, o 2 para un error en la escritura; no se imprime ningún mensaje de error en la última
caso, pero el parámetro ERROR reflejará el error que ocurrió.
zsistema rebaño [ -t tiempo de espera ] [ -f var ] [-Er] presentar
zsistema rebaño -u fd_expr
El incorporado zsistemasubcomando de rebaño realiza el bloqueo de archivos de aviso (a través del
fcntl(2) llamada al sistema) sobre todo el contenido del archivo dado. esta forma de
el bloqueo requiere que los procesos que acceden al archivo cooperen; es más obvio
el uso es entre dos instancias del propio shell.
En la primera forma el nombre presentar, que ya debe existir, se bloquea abriendo un
descriptor de archivo al archivo y aplicando un bloqueo al descriptor de archivo. La cerradura
termina cuando finaliza el proceso de shell que creó el bloqueo; por lo tanto es
a menudo es conveniente crear bloqueos de archivos dentro de subcapas, ya que el bloqueo es
se libera automáticamente cuando sale la subcapa. Se devuelve el estado 0 si el bloqueo
tiene éxito, de lo contrario el estado 1.
En la segunda forma, el descriptor de archivo dado por la expresión aritmética fd_expr
está cerrado, liberando un candado. El descriptor de archivo se puede consultar mediante el `-f
var' formulario durante el bloqueo; en un bloqueo exitoso, la variable de shell var se establece a
el descriptor de archivo utilizado para el bloqueo. El bloqueo se liberará si el archivo
el descriptor se cierra por cualquier otro medio, por ejemplo usando `ejecutivo {var}> & -';
sin embargo, el formulario descrito aquí realiza una comprobación de seguridad de que el descriptor de archivo
está en uso para el bloqueo de archivos.
De forma predeterminada, el shell espera indefinidamente a que el bloqueo se realice correctamente. La opción -t
tiempo de espera especifica un tiempo de espera para el bloqueo en segundos; actualmente esto debe ser un
entero. El shell intentará bloquear el archivo una vez por segundo durante este período.
Si se agota el tiempo de intento, se devuelve el estado 2.
Si la opcion -e se da, el descriptor de archivo para el bloqueo se conserva cuando el
usos de la concha ejecutivo para iniciar un nuevo proceso; de lo contrario, se cierra en ese punto y
la cerradura se liberó.
Si la opcion -r se da, el bloqueo es solo para lectura, de lo contrario es para
leyendo y escribiendo. El descriptor de archivo se abre en consecuencia.
zsistema apoya subcomando
El incorporado zsistemasubcomando de apoya prueba si un subcomando dado es
soportado. Devuelve el estado 0 si es así, de lo contrario el estado 1. Funciona en silencio a menos que
hubo un error de sintaxis (es decir, el número incorrecto de argumentos), en cuyo caso el estado
Se devuelve 255. El estado 1 puede indicar una de dos cosas: subcomando se sabe pero
no es compatible con el sistema operativo actual, o subcomando no se sabe (posiblemente
porque esta es una versión anterior del shell antes de que se implementara).
Matemáticas Funciones
sistema(fd)
La función matemática systell devuelve la posición actual del archivo para el descriptor de archivo
pasado como argumento.
parámetros
error Una matriz de solo lectura de los nombres de los errores definidos en el sistema. Estos son típicamente
macros definidas en C al incluir el archivo de encabezado del sistema errno.h. El índice de cada
nombre (asumiendo la opción KSH_ARRAYS está desarmado) corresponde al número de error.
Números de error número antes del último error conocido que no tienen nombre se les da el nombre
Enúmero en la matriz.
Tenga en cuenta que no se manejan los alias para los errores; sólo se utiliza el nombre canónico.
parámetros del sistema
Una matriz asociativa de solo lectura. Las claves son:
pid Devuelve el ID de proceso del proceso actual, incluso en subcapas. Comparar
$$, que devuelve el ID de proceso del proceso de shell principal.
pid Devuelve el ID de proceso del padre del proceso actual, incluso en
subcapas. Comparar $ PPID, que devuelve el ID de proceso del padre del
proceso de capa principal.
EL ZSH/RED/TCP MÓDULO
La zsh / net / tcp El módulo pone a disposición un comando integrado:
ztcp [ -acflLtv ] [ -d fd ] [ args ]
ztcp se implementa como una función integrada para permitir el uso completo de la edición de la línea de comandos de shell,
E/S de archivos y mecanismos de control de trabajos.
If ztcp se ejecuta sin opciones, generará el contenido de su tabla de sesión.
Si se ejecuta solo con la opción -L, generará el contenido de la sesión.
tabla en un formato adecuado para el análisis automático. La opción se ignora si se da
con un comando para abrir o cerrar una sesión. La salida consta de un conjunto de líneas,
uno por sesión, cada uno con los siguientes elementos separados por espacios:
Descriptor de archivo
El descriptor de archivo en uso para la conexión. Para entrada normal (I) y
saliente (O) conexiones, esto puede ser leído y escrito por el shell habitual
mecanismos. Sin embargo, solo debe cerrarse con `ztcp -c'.
Tipo de conexión
Una carta que indique cómo se creó la sesión:
Z Una sesión creada con el zftp mando.
L Se abrió una conexión para escuchar con `ztcp -l'.
I Una conexión entrante aceptada con `ztcp -a'.
O Una conexión saliente creada con `ztcp fortaleza ...'.
El anfitrión local
Por lo general, se establece en una dirección IP de todos ceros como la dirección del
localhost es irrelevante.
el puerto local
Es probable que sea cero a menos que la conexión sea para escuchar.
El host remoto
Este es el nombre de dominio completo del par, si está disponible, de lo contrario, un
Dirección IP. Es una dirección IP de todos ceros para una sesión abierta para
escuchando.
El puerto remoto
Esto es cero para una conexión abierta para escuchar.
saliente Conexiones
ztcp [ -v ] [ -d fd ] fortaleza [ Puerto ]
Abra una nueva conexión TCP para fortaleza. Si el Puerto se omite, por defecto será el puerto
23. La conexión se agregará a la tabla de sesión y el parámetro de shell
RESPUESTA se establecerá en el descriptor de archivo asociado con esa conexión.
If -d se especifica, su argumento se tomará como el descriptor de archivo de destino para
la conexión.
Para obtener una salida más detallada, use -v.
Inbound Conexiones
ztcp -l [ -v ] [ -d fd ] Puerto
ztcp -l abrirá un socket escuchando en TCP Puerto. El zócalo se agregará al
tabla de sesión y el parámetro de shell RESPUESTA se establecerá en el descriptor de archivo
asociado con ese oyente.
If -d se especifica, su argumento se tomará como el descriptor de archivo de destino para
la conexión.
Para obtener una salida más detallada, use -v.
ztcp -a [ -televisión ] [ -d objetivofd ] escuchar
ztcp -a aceptará una conexión entrante al puerto asociado con escuchar.
La conexión se agregará a la tabla de sesión y el parámetro de shell RESPUESTA
se establecerá en el descriptor de archivo asociado con la conexión entrante.
If -d se especifica, su argumento se tomará como el descriptor de archivo de destino para
la conexión.
If -t está especificado, ztcp regresará si no hay ninguna conexión entrante pendiente.
De lo contrario, esperará a uno.
Para obtener una salida más detallada, use -v.
Cierre Conexiones
ztcp -cf [ -v ] [ fd ]
ztcp -c [ -v ] [ fd ]
ztcp -c cerrará el socket asociado con fd. El zócalo se quitará de
la mesa de sesiones. Si fd no está especificado, ztcp cerrará todo en el
mesa de sesiones.
Normalmente, los sockets registrados por zftp (ver módulos zsh(1) ) no se puede cerrar este
camino. Para forzar el cierre de dicho enchufe, utilice -f.
Para obtener una salida más detallada, use -v.
Ejemplo
Aquí se explica cómo crear una conexión TCP entre dos instancias de zsh. Tenemos que elegir un
puerto no asignado; aquí usamos el 5123 elegido al azar.
On host1,
zmodcargar zsh / net / tcp
ztcp -l 5123
listenfd=$RESPUESTA
ztcp -a $escuchar
fd=$RESPUESTA
El penúltimo comando se bloquea hasta que haya una conexión entrante.
Ahora crea una conexión desde host2 (que puede, por supuesto, ser la misma máquina):
zmodcargar zsh / net / tcp
ztcp host1 5123
fd=$RESPUESTA
Ahora en cada anfitrión, $fd contiene un descriptor de archivo para hablar con el otro. Por ejemplo,
on host1:
Imprimir Este is a mensaje >&$fd
and on host2:
read -r línea <&$fd; Imprimir -r - $ línea
impresiones 'Este is a mensaje'.
Para ordenar, en host1:
ztcp -c $escuchar
ztcp -c $fd
and on host2
ztcp -c $fd
EL ZSH/TERMCAP MÓDULO
La zsh / termcap El módulo pone a disposición un comando integrado:
ecotc tapa [ arg ...]
Salida del valor termcap correspondiente a la capacidad tapa, con opcional
argumentos
La zsh / termcap El módulo pone a disposición un parámetro:
termcap
Una matriz asociativa que asigna códigos de capacidad termcap a sus valores.
EL ZSH/TERMINFO MÓDULO
La zsh/terminfo El módulo pone a disposición un comando integrado:
ecoti tapa [ arg ]
Salida del valor terminfo correspondiente a la capacidad tapa, instanciado con
arg si es aplicable.
La zsh/terminfo El módulo pone a disposición un parámetro:
información terminológica
Una matriz asociativa que asigna los nombres de las capacidades terminfo a sus valores.
EL ZSH/ZFTP MÓDULO
La zsh / zftp El módulo pone a disposición un comando integrado:
zftp subcomando [ args ]
La zsh / zftp módulo es un cliente para FTP (protocolo de transferencia de archivos). Está
implementado como una función integrada para permitir el uso completo de la edición de línea de comandos de shell, E/S de archivos,
y mecanismos de control del trabajo. A menudo, los usuarios accederán a él a través de funciones de shell.
proporcionando una interfaz más potente; se proporciona un juego con el zsh
y se describe en zshzftpsys(1). sin embargo, el zftp comando es totalmente utilizable en
por derecho propio.
Todos los comandos consisten en el nombre del comando zftp seguido del nombre de un subcomando.
Estos se enumeran a continuación. Se supone que el estado de retorno de cada subcomando
reflejan el éxito o el fracaso de la operación remota. Ver una descripción de la
variable ZFTP_VERBOSE para obtener más información sobre cómo las respuestas del servidor pueden ser
impreso.
Subcomandos
abierto fortaleza[:Puerto] [ usuario [ la contraseña [ . ]]]
Abra una nueva sesión de FTP para fortaleza, que puede ser el nombre de un host conectado por TCP/IP o
un número IP en la notación estándar de puntos. Si el argumento tiene la forma
fortaleza:Puerto, abra una conexión al puerto TCP Puerto en lugar del puerto FTP estándar 21.
Puede ser el nombre de un servicio TCP o un número: consulte la descripción de
ZFTP_PORT a continuación para más información.
Si se utilizan direcciones IPv6 en formato de dos puntos, el fortaleza debe estar rodeado de comillas
corchetes para distinguirlo del Puerto, Por ejemplo
'[fe80::203:baff:fe02:8b56]'. Por consistencia, esto está permitido con todas las formas de
fortaleza.
Los argumentos restantes se pasan al Inicie sesión subcomando Tenga en cuenta que si no hay argumentos
beyond fortaleza se suministran, abierto will no llamar automáticamente Inicie sesión. Si no hay argumentos
en absoluto se suministran, abierto utilizará los parámetros establecidos por el params subcomando.
Después de una apertura exitosa, las variables de shell ZFTP_HOST, ZFTP_PORT, ZFTP_IP y
SISTEMA_ZFTP están disponibles; consulte 'Variables' a continuación.
Inicie sesión [ nombre [ la contraseña [ . ]]]
usuario [ nombre [ la contraseña [ . ]]]
Iniciar sesión el usuario nombre con parámetros la contraseña y .. Cualquiera de los parámetros
se puede omitir y se leerá desde la entrada estándar si es necesario (nombre es siempre
necesario). Si la entrada estándar es un terminal, se imprimirá un aviso para cada uno en
error estándar y la contraseña no se repetirá. Si alguno de los parámetros no es
utilizado, se imprime un mensaje de advertencia.
Después de un inicio de sesión exitoso, las variables de shell ZFTP_USUARIO, ZFTP_CUENTA y ZFTP_PWD
están disponibles; consulte 'Variables' a continuación.
Este comando se puede volver a emitir cuando un usuario ya ha iniciado sesión y el servidor
primero ser reinicializado para un nuevo usuario.
params [ fortaleza [ usuario [ la contraseña [ . ]]]]
params -
Guarde los parámetros dados para más tarde. abierto Comando sin argumentos. Solo esos
dado en la línea de comando será recordado. Si no se dan argumentos, el
se imprimen los parámetros configurados actualmente, aunque la contraseña aparecerá como una línea
de estrellas; el estado de retorno es uno si no se establecieron parámetros, cero en caso contrario.
Cualquiera de los parámetros se puede especificar como `?', que puede ser necesario citar a
protegerlo de la expansión de la cáscara. En este caso, el parámetro apropiado será
leer desde stdin como con el Inicie sesión subcomando, incluido el manejo especial de
la contraseña. Si el `?' va seguido de una cadena, que se utiliza como indicación para
leer el parámetro en lugar del mensaje predeterminado (cualquier puntuación necesaria y
se deben incluir espacios en blanco al final del indicador). La primera letra de la
El parámetro (solo) se puede citar con un `\'; por lo tanto un argumento "\\$palabra" garantías
que la cadena del parámetro de shell $ palabra serán tratados literalmente, ya sea
o no comienza con `?'.
Si en cambio un solo `-', los parámetros existentes, si los hay, se eliminan. En
ese caso, llamando abierto sin argumentos causará un error.
La lista de parámetros no se elimina después de un Cerrar, sin embargo, se eliminará si
de la forma más zsh / zftp el módulo está descargado.
Por ejemplo,
zftp params ftp.otro lugar.xx juerga '?Contraseña for juez: '
almacenará el host ftp.otro lugar.xx y el usuario juerga y luego solicitar al usuario
para la contraseña correspondiente con el aviso dado.
test Pruebe la conexión; si el servidor ha informado que ha cerrado la conexión
(tal vez debido a un tiempo de espera), estado de retorno 2; si no se abrió ninguna conexión de todos modos, regrese
estado 1; de lo contrario, devuelve el estado 0. El test el subcomando es silencioso, aparte de los mensajes
impreso por el $ ZFTP_VERBOSE mecanismo, o mensajes de error si la conexión se cierra.
No hay sobrecarga de red para esta prueba.
La prueba solo se admite en sistemas con el selecciona(2) or encuesta(2) te
llamadas; de lo contrario, el mensaje `no apoyadas on este vídeo te' se imprime en su lugar.
La test El subcomando se llamará automáticamente al comienzo de cualquier otro
subcomando para la sesión actual cuando una conexión está abierta.
cd directorio
Cambie el directorio remoto a directorio. También altera la variable de shell ZFTP_PWD.
cdup Cambie el directorio remoto al que está más arriba en el árbol de directorios. Tenga en cuenta que cd
.. también funcionará correctamente en sistemas que no sean UNIX.
dir [ arg ...]
Proporcione una lista (detallada) del directorio remoto. El args se pasan directamente a
el servidor. El comportamiento del comando depende de la implementación, pero un servidor UNIX
típicamente interpretará args como argumentos para la ls comando y sin argumentos
devolver el resultado de `ls -l'. El directorio aparece en la salida estándar.
ls [ arg ...]
Proporcione una lista (breve) del directorio remoto. Sin arg, produce una lista sin procesar
de los archivos en el directorio, uno por línea. De lo contrario, hasta caprichos del
implementación del servidor, se comporta de manera similar a dir.
tipo [ tipo ]
Cambie el tipo de transferencia a tipo, o imprima el tipo actual si tipo is
ausente. Los valores permitidos son `A' (ASCII), `I' (Imagen, es decir, binario), o `B' (a
sinónimo de `I').
El FTP predeterminado para una transferencia es ASCII. Sin embargo, si zftp encuentra que el control remoto
host es una máquina UNIX con byes de 8 bits, cambiará automáticamente a usar
binario para transferencias de archivos en abierto. Esto puede ser anulado posteriormente.
El tipo de transferencia solo se pasa al host remoto cuando se establece una conexión de datos.
establecido; este comando no implica sobrecarga de red.
ascii Lo mismo que tipo A.
binario Lo mismo que tipo I.
modo [ S | B ]
Establezca el tipo de modo en transmisión (S) o bloquear (B). El modo de transmisión es el predeterminado; cuadra
El modo no es ampliamente compatible.
sanaciones presentar ...
local [ presentar ...]
Imprime el tamaño y la hora de la última modificación de los archivos remotos o locales. Sí hay
hay más de un elemento en la lista, el nombre del archivo se imprime primero. El
el primer número es el tamaño del archivo, el segundo es la hora de la última modificación del archivo
en el formato CCAAMMDDhhmmSS compuesto por año, mes, día, hora, minutos y
segundos en GMT. Tenga en cuenta que este formato, incluida la longitud, está garantizado, por lo que
que las cadenas de tiempo se pueden comparar directamente a través de la [[ incorporado < y > operadores,
incluso si son demasiado largos para ser representados como números enteros.
No todos los servidores admiten los comandos para recuperar esta información. En eso
caso, el sanaciones El comando no imprimirá nada y devolverá el estado 2, en comparación con
estado 1 para un archivo no encontrado.
La local mando (pero no sanaciones) puede usarse sin argumentos, en cuyo caso el
la información proviene del examen del descriptor de archivo cero. Este es el mismo archivo que
visto por un put comando sin más redirección.
get presentar ...
Recuperar todo presentars del servidor, concatenándolos y enviándolos a estándar
salida.
put presentar ...
Para cada uno presentar, lea un archivo de la entrada estándar y envíelo al host remoto
con el nombre de pila
anexar presentar ...
As put, pero si el control remoto presentar ya existe, se le agregan datos en lugar de
sobrescribiéndolo.
llegar a presentar punto
ponlo en presentar punto
apéndice presentar punto
Versiones de get, put y anexar que iniciará la transferencia en el momento dado punto in
el mando a distancia presentar. Esto es útil para agregar a un archivo local incompleto.
Sin embargo, tenga en cuenta que esta capacidad no es universalmente admitida por los servidores (y no es
bastante el comportamiento especificado por la norma).
borrar presentar ...
Eliminar la lista de archivos en el servidor.
mkdir directorio
Crea un nuevo directorio directorio en el servidor.
rmdir directorio
Eliminar el directorio directorio en el servidor.
rebautizar viejo nombre nuevo nombre
Renombrar archivo viejo nombre a nuevo nombre en el servidor.
página web arg ...
Envíe un comando específico del host al servidor. Probablemente solo necesites esto si
instruido por el servidor para usarlo.
cotización inicial arg ...
Envíe la secuencia de comandos FTP sin formato al servidor. Debe estar familiarizado con el
Configure el comando FTP como se define en RFC959 antes de hacer esto. Los comandos útiles pueden
incluir STAT y AYUDA. Tenga en cuenta también el mecanismo para devolver mensajes como se describe
para la variable ZFTP_VERBOSE a continuación, en particular que todos los mensajes del
conexión de control se envían a error estándar.
Cerrar
renuncia Cierra la conexión de datos actual. Esto desarma los parámetros del shell. ZFTP_HOST,
ZFTP_PORT, ZFTP_IP, SISTEMA_ZFTP, ZFTP_USUARIO, ZFTP_CUENTA, ZFTP_PWD, ZFTP_TIPO y
MODO_ZFTP.
Sesión [ nombre de sesión ]
Permite utilizar varias sesiones de FTP a la vez. El nombre de la sesión es un
cadena arbitraria de caracteres; la sesión predeterminada se llama `tu préstamo estudiantil'. Si esto
se llama al comando sin un argumento, enumerará todas las sesiones actuales; con
un argumento, cambiará a la sesión existente llamada nombre de sesióno
crear una nueva sesión con ese nombre.
Cada sesión recuerda el estado de la conexión, el conjunto de información específica de la conexión
parámetros de shell (el mismo conjunto que se desactiva cuando se cierra una conexión, como se indica en
la descripción de Cerrar), y cualquier parámetro de usuario especificado con el params
subcomando Cambiar a una sesión anterior restaura esos valores; cambiando a un
new session los inicializa de la misma manera que si zftp acababa de ser cargado. El
el nombre de la sesión actual viene dado por el parámetro ZFTP_SESIÓN.
sesión [ nombre de sesión ]
Eliminar una sesión; si no se proporciona un nombre, se elimina la sesión actual. Si el
la sesión actual se elimina, la primera sesión existente se convierte en la nueva sesión actual
sesión, de lo contrario, la sesión actual no cambia. Si la sesión está siendo
eliminado es el único, una nueva sesión llamada `tu préstamo estudiantil' se crea y se convierte en el
sesión actual; tenga en cuenta que esta es una nueva sesión incluso si la sesión se elimina
también se llama `tu préstamo estudiantil'. Se recomienda que las sesiones no se eliminen mientras
comandos de fondo que utilizan zftp todavía están activos
parámetros
Los siguientes parámetros de shell son utilizados por zftp. Actualmente ninguno de ellos es especial.
ZFTP_TMOUT
Entero. El tiempo en segundos de espera para que se complete una operación de red antes
devolviendo un error. Si esto no está configurado cuando se carga el módulo, se le dará
el valor predeterminado 60. Un valor de cero desactiva los tiempos de espera. Si se produce un tiempo de espera en
la conexión de control se cerrará. Use un valor mayor si esto también ocurre
con frecuencia.
ZFTP_IP
Solo lectura. La dirección IP de la conexión actual en notación de puntos.
ZFTP_HOST
Solo lectura. El nombre de host del servidor remoto actual. Si el host se abrió como un
número de IP, ZFTP_HOST contiene eso en su lugar; esto ahorra la sobrecarga de un nombre
búsqueda, ya que los números de IP se usan más comúnmente cuando un servidor de nombres no está disponible.
ZFTP_PORT
Solo lectura. El número del puerto TCP remoto al que está abierta la conexión (incluso
si el puerto se especificó originalmente como un servicio con nombre). Por lo general, este es el
puerto FTP estándar, 21.
En el improbable caso de que su sistema no tenga la conversión adecuada
funciones, esto aparece en orden de bytes de red. Si su sistema es little-endian,
el puerto entonces consta de dos bytes intercambiados y se informará el puerto estándar
como 5376. En ese caso, los puertos numéricos pasaron a zftp abierto también tendrá que estar en
este formato.
SISTEMA_ZFTP
Solo lectura. La cadena de tipo de sistema devuelta por el servidor en respuesta a un FTP SISTEMA
solicitud. El caso más interesante es un comienzo de cadena UNIX Tipo: L8", cual
garantiza la máxima compatibilidad con un host UNIX local.
ZFTP_TIPO
Solo lectura. El tipo que se utilizará para las transferencias de datos, ya sea `A'o'I'. Utilizar el
tipo subcomando para cambiar esto.
ZFTP_USUARIO
Solo lectura. El nombre de usuario conectado actualmente, si lo hay.
ZFTP_CUENTA
Solo lectura. El nombre de cuenta del usuario actual, si lo hay. La mayoría de los servidores no
requieren un nombre de cuenta.
ZFTP_PWD
Solo lectura. El directorio actual en el servidor.
ZFTP_CODE
Solo lectura. El código de tres dígitos de la última respuesta FTP del servidor como una cadena.
Esto todavía se puede leer después de que se cierra la conexión, y no se cambia cuando el
cambios en la sesión actual.
ZFTP_REPLY
Solo lectura. La última línea de la última respuesta enviada por el servidor. Esto todavía puede ser
leer después de que se cierra la conexión, y no se cambia cuando la sesión actual
cambios.
ZFTP_SESIÓN
Solo lectura. El nombre de la sesión FTP actual; ver la descripción del Sesión
subcomando.
ZFTP_PREFS
Una serie de preferencias para alterar aspectos de zftpcomportamiento de cada preferencia
es un solo personaje. Se definen los siguientes:
P Pasivo: intenta que el servidor remoto inicie las transferencias de datos. Esta
es un poco más eficiente que el modo de puerto de envío. si la carta S ocurre más tarde
en la cuerda, zftp utilizará el modo de puerto de envío si el modo pasivo no está disponible.
S Sendport: iniciar transferencias por FTP PORT mando. Si esto ocurre
antes de cualquier P en la cadena, nunca se intentará el modo pasivo.
D Tonto: use solo el mínimo de comandos FTP. Esto previene el
las variables SISTEMA_ZFTP y ZFTP_PWD de ser establecido, y significará todo
las conexiones por defecto son de tipo ASCII. puede prevenir ZFTP_SIZE de ser establecido
durante una transferencia si el servidor no la envía de todos modos (muchos servidores lo hacen).
If ZFTP_PREFS no se establece cuando zftp está cargado, se establecerá en un valor predeterminado de `PS',
es decir, utilice el modo pasivo si está disponible; de lo contrario, vuelva al modo de puerto de envío.
ZFTP_VERBOSE
Una cadena de dígitos entre 0 y 5 inclusive, que especifica qué respuestas del
servidor debe ser impreso. Todas las respuestas van al error estándar. Si alguno de los
los números del 1 al 5 aparecen en la cadena, respuestas sin procesar del servidor con códigos de respuesta
comenzando con ese dígito se imprimirá con un error estándar. El primer dígito de
el código de respuesta de tres dígitos está definido por RFC959 para corresponder a:
1. Una respuesta preliminar positiva.
2. Una respuesta de finalización positiva.
3. Una respuesta intermedia positiva.
4. Una respuesta de finalización negativa transitoria.
5. Una respuesta de finalización negativa permanente.
Cabe señalar que, por razones desconocidas, la respuesta `Servicio no disponible',
que fuerza la terminación de una conexión, se clasifica como 421, es decir, 'transitorio
negativa', una interpretación interesante de la palabra 'transitoria'.
El código 0 es especial: indica que todas menos la última línea de multilínea
las respuestas leídas del servidor se imprimirán con un error estándar en un proceso
formato. Por convención, los servidores utilizan este mecanismo para enviar información para el
usuario para leer. El código de respuesta apropiado, si coincide con la misma respuesta, toma
prioridad.
If ZFTP_VERBOSE no se establece cuando zftp está cargado, se establecerá en el valor predeterminado
450, es decir, se imprimirán los mensajes destinados al usuario y todos los errores. un nulo
La cadena es válida y especifica que no se debe imprimir ningún mensaje.
Funciones
zftp_chpwd
Si el usuario establece esta función, se llama cada vez que cambia el directorio
en el servidor, incluso cuando un usuario inicia sesión o cuando se cierra una conexión.
En el último caso, $ZFTP_PWD será desarmado; de lo contrario, reflejará el nuevo
directorio.
progreso_zftp
Si el usuario establece esta función, se llamará durante un get, put or anexar
operación cada vez que se han recibido suficientes datos del host. Durante un get,
los datos se envían a la salida estándar, por lo que es vital que esta función escriba
a error estándar o directamente al terminal, no a salida estándar.
Cuando se llama con una transferencia en curso, el siguiente shell adicional
se establecen los parámetros:
ZFTP_ARCHIVO
El nombre del archivo remoto desde o hacia el que se transfiere.
ZFTP_TRANSFERENCIA
A G para un get operación y un P para un put operación.
ZFTP_SIZE
El tamaño total del archivo completo que se está transfiriendo: el mismo que el primero
valor proporcionado por el sanaciones y local subcomandos para un archivo en particular.
Si el servidor no puede proporcionar este valor para un archivo remoto que se está recuperando,
no se establecerá. Si la entrada proviene de una tubería, el valor puede ser incorrecto y
corresponden simplemente a un amortiguador de tubería llena.
ZFTP_COUNT
La cantidad de datos transferidos hasta ahora; un número entre cero y $ZFTP_SIZE,
si eso está establecido. Este número está siempre disponible.
La función se llama inicialmente con ZFTP_TRANSFERENCIA establecer adecuadamente y
ZFTP_COUNT puesto a cero. Una vez finalizada la transferencia, la función será
llamó una vez más con ZFTP_TRANSFERENCIA establecido en GF or PF, por si desea ordenar
arriba. De lo contrario, nunca se llama dos veces con el mismo valor de ZFTP_COUNT.
A veces, el medidor de progreso puede causar interrupciones. Depende del usuario decidir
si la función debe definirse y usar no funciona cuando sea necesario.
Problemas
No se puede abrir una conexión en el lado izquierdo de una tubería ya que esto ocurre en un
subshell y la información del archivo no se actualiza en el shell principal. En el caso de tipo
o cambia de modo o cierra la conexión en una subcapa, la información se devuelve pero
las variables no se actualizan hasta la siguiente llamada a zftp. Otros cambios de estado en subcapas
no se reflejará en los cambios en las variables (pero por lo demás debería ser inofensivo).
Eliminación de sesiones mientras un zftp comando está activo en segundo plano puede tener inesperado
efectos, incluso si no utiliza la sesión que se está eliminando. Esto se debe a que toda la cáscara
los subprocesos comparten información sobre el estado de todas las conexiones y la eliminación de una sesión
cambia el orden de esa información.
En algunos sistemas operativos, la conexión de control no es válida después de un fork(), por lo que
las operaciones en subcapas, en el lado izquierdo de una canalización o en segundo plano no son
posible, como debe ser. Esto es presumiblemente un error en el sistema operativo.
EL ZSH/ZLE MÓDULO
La zsh / zle El módulo contiene el editor de línea Zsh. Ver zshzle(1).
EL PARÁMETRO ZSH/ZLE MÓDULO
La parámetro zsh/zle módulo define dos parámetros especiales que se pueden utilizar para acceder
información interna del Zsh Line Editor (ver zshzle(1)).
mapas de teclas
Esta matriz contiene los nombres de los mapas de teclas definidos actualmente.
widgets
Esta matriz asociativa contiene una entrada por widget definido. El nombre de
widget es la clave y el valor da información sobre el widget. es cualquiera
la cadena `incorporado' para widgets incorporados, una cadena de la forma `usuario:nombre ' para
widgets definidos por el usuario, donde nombre es el nombre de la función de shell que implementa el
widget, o es una cadena de la forma `terminación:tipo:nombre ', para completar
widgets en el ultimo caso tipo es el nombre de los widgets incorporados la finalización
widget imita en su comportamiento y nombre es el nombre de la función de shell
implementando el widget de finalización.
EL ZSH/ZPROF MÓDULO
Cuando está cargado, el zsh/zprof hace que se perfilen las funciones de shell. Los resultados del perfil
se puede obtener con el zprof Comando integrado disponible en este módulo. No hay
otra forma de desactivar la creación de perfiles que no sea descargar el módulo.
zprof [ -c ]
Sin el -c opción, zprof enumera los resultados de perfiles en la salida estándar. Él
El formato es comparable al de comandos como profesor.
En la parte superior hay un resumen que enumera todas las funciones que se llamaron al menos una vez.
Este resumen está ordenado en orden decreciente de la cantidad de tiempo dedicado a cada uno.
Las líneas contienen el número de la función en orden, que se usa en otras partes
de la lista en sufijos de la forma `[número]', entonces el número de llamadas realizadas al
función. Las siguientes tres columnas enumeran el tiempo en milisegundos pasado en el
función y sus descendientes, el tiempo promedio en milisegundos empleado en la
función y sus descendientes por llamada y el porcentaje de tiempo invertido en todo el shell
funciones utilizadas en esta función y sus descendientes. Las siguientes tres columnas
dar la misma información, pero contando sólo el tiempo dedicado a la función en sí.
La última columna muestra el nombre de la función.
Después del resumen, se incluye información detallada sobre cada función que se invocó.
enumerados, ordenados en orden decreciente de la cantidad de tiempo dedicado a cada función y
sus descendientes. Cada una de estas entradas consta de descripciones de las funciones
que llamó a la función descrita, la función misma y las funciones que
fueron llamados de ella. La descripción de la función en sí tiene el mismo formato.
como en el resumen (y muestra la misma información). Las otras líneas no muestran el
número de la función al principio y tienen su función nombrada con sangría para
facilitar la distinción de la línea que muestra la función descrita en el
sección de las líneas circundantes.
La información que se muestra en este caso es casi la misma que en el resumen, pero solo
se refiere a la jerarquía de llamadas que se muestra. Por ejemplo, para una función de llamada
la columna que muestra el tiempo total de ejecución enumera el tiempo empleado en el descrito
función y sus descendientes sólo para los tiempos en que fue llamado desde ese
función de llamada particular. Del mismo modo, para una función llamada, esta columna enumera
el tiempo total empleado en la función llamada y sus descendientes solo para los tiempos
cuando fue llamado desde la función descrita.
También en este caso, la columna que muestra el número de llamadas a una función también muestra
una barra inclinada y luego el número total de invocaciones realizadas a la función llamada.
Siempre y cuando el zsh/zprof se carga el módulo, se realizará la creación de perfiles y múltiples
invocaciones de la zprof El comando incorporado mostrará los tiempos y números de llamadas.
desde que se cargó el módulo. Con el -c opción, la zprof comando incorporado
restablecer sus contadores internos y no mostrará el listado.
EL ZSH/ZPTY MÓDULO
La zsh / zpty El módulo ofrece uno incorporado:
zpty [ -e ] [ -b ] nombre [ arg ...]
Los argumentos que siguen nombre se concatenan con espacios entre ellos, luego se ejecutan como
una orden, como si se la pasaran al eval incorporado. El comando se ejecuta bajo una nueva
pseudo-terminal asignado; esto es útil para ejecutar comandos de forma no interactiva
que esperan un entorno interactivo. Él nombre no es parte del comando, pero
se utiliza para referirse a este comando en llamadas posteriores a zpty.
Con la -e opción, el pseudo-terminal está configurado para que los caracteres de entrada sean
repitió.
Con la -b opción, la entrada y salida desde el pseudo-terminal se realizan
sin bloqueo.
El parámetro de la cáscara RESPUESTA se establece en el descriptor de archivo asignado al lado maestro
del pseudo-terminal. Esto permite monitorear el terminal con ZLE
controladores de descriptores (ver zshzle(1)) o manipulados con lectura del sistema y escritura del sistema (consulta:
EL MÓDULO ZSH/SISTEMA en módulos zsh(1)). advertencia: Uso de lectura del sistema y escritura del sistema is
no uso recomendado zpty -r y zpty -w a menos que sepas exactamente lo que eres
obra.
zpty -d [ nombre ...]
La segunda forma, con el -d opción, se utiliza para borrar comandos previamente iniciados,
proporcionando una lista de sus nombre s. Si no nombre se da, todos los comandos se eliminan.
Eliminar un comando hace que la señal HUP se envíe al proceso correspondiente.
zpty -w [ -n ] nombre [ cadena ...]
La -w La opción se puede utilizar para enviar el comando a nombre lo dado cadenas como entrada
(separados por espacios). Si el -n opción es no dado, se agrega una nueva línea en el
fin.
Si no es correcto cadena se proporciona, la entrada estándar se copia en el pseudo-terminal; este
puede detenerse antes de copiar la entrada completa si el pseudo-terminal no bloquea.
Tenga en cuenta que el comando bajo el pseudo-terminal ve esta entrada como si fuera
escrito, así que tenga cuidado al enviar caracteres especiales del controlador tty, como borrado de palabras,
line-kill y fin de archivo.
zpty -r [ -monte ] nombre [ detener [ patrón ]]
La -r La opción se puede utilizar para leer la salida del comando. nombre . con solo un nombre
argumento, la lectura de salida se copia a la salida estándar. A menos que el
pseudo-terminal no bloquea, la copia continúa hasta que el comando bajo el
salidas pseudoterminales; cuando no bloquea, solo la cantidad de salida que es inmediatamente
disponible se copia. El estado de retorno es cero si se copia alguna salida.
Cuando también se le da un detener argumento, como máximo se lee una línea y se almacena en el
parámetro llamado detener. Se puede leer menos de una línea completa si el pseudo-terminal está
sin bloqueo. El estado de retorno es cero si al menos un carácter está almacenado en
detener.
Si patrón también se da, la salida se lee hasta que toda la cadena leída coincida
de la forma más patrón, incluso en el caso de no bloqueo. El estado de retorno es cero si el
la cadena de lectura coincide con el patrón, o si el comando ha salido pero al menos una
todavía se podía leer el carácter. Si la opción -m está presente, el estado de retorno es
cero solo si el patrón coincide. Al escribir estas líneas, un máximo de un megabyte de
la producción se puede consumir de esta manera; si se lee un megabyte completo sin coincidir con el
patrón, el estado de retorno es distinto de cero.
En todos los casos, el estado de retorno es distinto de cero si no se pudo leer nada, y es 2 if
esto se debe a que el comando ha terminado.
Si -r La opción se combina con la -t opción, zpty comprueba si la salida es
disponible antes de intentar leer. Si no hay salida disponible, zpty inmediatamente
devuelve el estado 1. Cuando se usa con un patrón, el comportamiento en una encuesta fallida es
similar a cuando el comando ha salido: el valor devuelto es cero si al menos uno
el carácter aún podría leerse incluso si el patrón no coincidiera.
zpty -t nombre
La -t opción sin la -r La opción se puede utilizar para probar si el comando nombre is
Sigue corriendo. Devuelve un estado cero si el comando se está ejecutando y un estado distinto de cero
valor de lo contrario.
zpty [ -L ]
La última forma, sin ningún argumento, se usa para enumerar los comandos actualmente
definido. Si el -L se da la opción, esto se hace en forma de llamadas al zpty
incorporado.
EL ZSH/ZSELECCIONAR MÓDULO
La zsh / zselect El módulo pone a disposición un comando integrado:
zseleccionar [ -rwe ] [ -t tiempo de espera ] [ -a matriz ] [ -A Assoc ] [ fd ...]
La zseleccionar builtin es un front-end para la llamada al sistema 'select', que bloquea hasta
un descriptor de archivo está listo para leer o escribir, o tiene una condición de error, con
un tiempo de espera opcional. Si esto no está disponible en su sistema, el comando imprime
un mensaje de error y devuelve el estado 2 (los errores normales devuelven el estado 1). Para más
información, consulte la documentación de su sistema para selecciona(3). Tenga en cuenta que no hay
conexión con el shell incorporado del mismo nombre.
Los argumentos y las opciones pueden entremezclarse en cualquier orden. Los argumentos de no opción son
descriptores de archivo, que deben ser enteros decimales. Por defecto, los descriptores de archivo son
para ser probado para la lectura, es decir zseleccionar regresará cuando los datos estén disponibles para ser
leer desde el descriptor de archivo, o más precisamente, cuando una operación de lectura desde el
el descriptor de archivo no se bloqueará. Después de -r, -w y -e, los descriptores de archivo dados
deben probarse para condiciones de lectura, escritura o error. Estas opciones y una
se puede dar una lista arbitraria de descriptores de archivos en cualquier orden.
(La presencia de una 'condición de error' no está bien definida en la documentación para
muchas implementaciones de la llamada al sistema de selección. Según versiones recientes de
la especificación POSIX, es realmente una excepción condición, de las cuales la única
El ejemplo estándar son los datos fuera de banda recibidos en un socket. Así que los usuarios de zsh son
poco probable encontrar el -e opción útil.)
La opción `-t tiempo de espera' especifica un tiempo de espera en centésimas de segundo. Esto podría ser
cero, en cuyo caso los descriptores de archivo simplemente serán consultados y zseleccionar will
volver inmediatamente. Es posible llamar a zselect sin descriptores de archivo y un
tiempo de espera distinto de cero para usar como un reemplazo más detallado de 'dormir'; tenga en cuenta, sin embargo,
el estado de retorno es siempre 1 para un tiempo de espera.
La opción `-a matriz' indica que matriz debe establecerse para indicar el archivo
descriptor(es) que están listos. Si no se da la opción, la matriz responder se mostrarán
utilizado para este fin. La matriz contendrá una cadena similar a los argumentos
for zseleccionar. Por ejemplo,
zseleccionar -t 0 -r 0 -w 1
podría volver inmediatamente con el estado 0 y $respuesta que contiene `-r 0 -w 1' mostrar
que ambos descriptores de archivo están listos para las operaciones solicitadas.
La opción `-A Assoc' indica que la matriz asociativa Assoc debe configurarse para
indique los descriptores de archivo que están listos. Esta opción anula la opción
-a, ni lo hará responder ser modificado. las llaves de Assoc son los descriptores de archivo, y
los valores correspondientes son cualquiera de los caracteres `rwe' para indicar la condición.
El comando devuelve el estado 0 si algunos descriptores de archivos están listos para leer. Si
la operación superó el tiempo de espera, o se dio un tiempo de espera de 0 y no se proporcionaron descriptores de archivo
listo, o hubo un error, devuelve el estado 1 y la matriz no se establecerá
(ni modificado de ninguna manera). Si hubo un error en la operación de selección, el
se imprime el mensaje de error correspondiente.
EL ZSH/ZÚTIL MÓDULO
La zsh / zutil El módulo solo agrega algunos elementos integrados:
estilo z [ -L [ patrón [ style ]]]
estilo z [ -e | - | -- ] patrón style cadena ...
estilo z -d [ patrón [ style ...]]
estilo z -g nombre [ patrón [ style ]]
estilo z -{a|b|s} contexto style nombre [ sep ]
estilo z -{T|t} contexto style [ cadena ...]
estilo z -m contexto style patrón
Este comando incorporado se usa para definir y buscar estilos. Los estilos son pares de
nombres y valores, donde los valores consisten en cualquier número de cadenas. Ellos son
almacenado junto con los patrones y la búsqueda se realiza dando una cadena, llamada
`contexto', que se compara con los patrones. La definición almacenada por primera
se devolverá el patrón coincidente.
Para ordenar las comparaciones, se buscan patrones desde el más específico al menos
específicos, y los patrones que son igualmente específicos mantienen el orden en el que fueron
definido. Se considera que un patrón es más específico que otro si contiene
más componentes (subcadenas separadas por dos puntos) o si los patrones para el
los componentes son más específicos, donde las cadenas simples se consideran más
específicos que los patrones y los patrones complejos se consideran más específicos que
el patrón `*'.
La primera forma (sin argumentos) enumera las definiciones. Los estilos se muestran en
el orden alfabético y los patrones se muestran en el orden estilo z los pondrá a prueba.
Si -L se da la opción, el listado se hace en forma de llamadas a estilo z.
El primer argumento opcional es un patrón que se comparará con la cadena.
suministrado como patrón para el contexto; tenga en cuenta que esto significa, por ejemplo, `estilo z
-L ":terminación:*"' coincidirá con cualquier patrón proporcionado que comience con `:terminación:', no
just ":terminación:*": utilizar ":terminación:\*" para que coincida con eso. El segundo opcional
El argumento limita la salida a un determinado style (no es un patrón). -L no es
compatible con cualquier otra opción.
Las otras formas son las siguientes:
estilo z [ - | -- | -e ] patrón style cadena ...
Define lo dado style para patrón con el cadenas como el valor. Si
de la forma más -e se da la opción, la cadenas serán concatenados (separados por
espacios) y la cadena resultante será evaluada (de la misma manera que se
hecho por el eval comando incorporado) cuando se busca el estilo. En este caso
el parámetro `responder' debe asignarse para establecer las cadenas devueltas después de la
evaluación. Antes de evaluar el valor, responder está desarmado, y si todavía está
no configurado después de la evaluación, el estilo se trata como si no estuviera configurado.
estilo z -d [ patrón [ style ...]]
Eliminar definiciones de estilo. Sin argumentos se eliminan todas las definiciones,
con patrón todas las definiciones para ese patrón se eliminan y, si las hay
stylese dan s, luego solo esos estilos se eliminan para el patrón.
estilo z -g nombre [ patrón [ style ]]
Recuperar una definición de estilo. Él nombre se utiliza como el nombre de una matriz en
que se almacenan los resultados. Sin más argumentos, todos los patrones
definidos son devueltos. Con un patrón los estilos definidos para ese patrón son
regresado y con ambos un patrón y style, las cadenas de valor de ese
se devuelve la combinación.
Los otros formularios se pueden usar para buscar o probar patrones.
estilo z -s contexto style nombre [ sep ]
El parámetro nombre se establece en el valor del estilo interpretado como una cadena.
Si el valor contiene varias cadenas, se concatenan con espacios (o
con el sep cadena si se da) entre ellos.
estilo z -b contexto style nombre
El valor se almacena en nombre como un booleano, es decir, como la cadena `si' Si el
El valor tiene solo una cadena y esa cadena es igual a uno de `si', `su verdadero',
`on', o'1'. Si el valor es cualquier otra cadena o tiene más de una cadena,
el parámetro se establece en `no'.
estilo z -a contexto style nombre
El valor se almacena en nombre como una matriz. Si nombre se declara como un
matriz asociativa, la primera, tercera, etc. cadenas se utilizan como claves y
las otras cadenas se utilizan como valores.
estilo z -t contexto style [ cadena ...]
estilo z -T contexto style [ cadena ...]
Pruebe el valor de un estilo, es decir, el -t opción solo devuelve un estado (establece
$?). Sin ningún cadena el estado de retorno es cero si el estilo está definido
para al menos un patrón coincidente, tiene solo una cadena en su valor, y
que es igual a uno de `su verdadero', `si', `on'o'1'. Si alguna cadenase dan
el estado es cero si y solo si al menos uno de los cadenas es igual a en
menos una de las cadenas en el valor. Si el estilo está definido pero no
coinciden, el estado de devolución es 1. Si el estilo no está definido, el estado es 2.
La -T opción prueba los valores del estilo como -t, pero devuelve el estado
cero (en lugar de 2) si el estilo no está definido para ningún patrón coincidente.
estilo z -m contexto style patrón
Coincide con un valor. Devuelve el estado cero si el patrón coincide con al menos uno de
las cadenas en el valor.
formato z -f detener formato especulación ...
formato z -a matriz sep especulación ...
Este incorporado proporciona dos formas diferentes de formato. Se selecciona la primera forma.
con el -f opción. En este caso el formato la cadena se modificará reemplazando
secuencias que comienzan con un signo de porcentaje en él con cadenas de la especulacións. Cada
especulación debe ser de la forma `tanque:cadena' que hará que cada aparición de la
secuencia '%tanque'en formato para ser reemplazado por el cadena. El '%La secuencia también puede
contener especificaciones opcionales de ancho de campo mínimo y máximo entre `%'y
el 'tanque' en la forma '%min.maxc', es decir, el ancho de campo mínimo se da primero y
si se utiliza el ancho de campo máximo, debe ir precedido de un punto. Especificando un
ancho de campo mínimo hace que el resultado se rellene con espacios a la derecha si el
cadena es más corto que el ancho solicitado. El relleno a la izquierda se puede lograr mediante
dando un ancho de campo mínimo negativo. Si se especifica un ancho de campo máximo, el
cadena se truncará después de tantos caracteres. Después de todo `%'secuencias para
lo dado especulacións han sido procesados, la cadena resultante se almacena en el
parámetro detener.
La %-escapes también comprende expresiones ternarias en la forma utilizada por indicaciones. Él
% va seguido de un `(' y luego un carácter especificador de formato ordinario como se describe
sobre. Puede haber un conjunto de dígitos antes o después de `('; estos especifican
un número de prueba, que por defecto es cero. También se permiten números negativos. Un
carácter delimitador arbitrario sigue el especificador de formato, que es seguido por un
trozo de texto 'verdadero', el carácter delimitador de nuevo, un trozo de texto 'falso', y un
paréntesis de cierre. La expresión completa (sin los dígitos) por lo tanto parece
`%(X.text1.text2)', excepto que el `.El carácter es arbitrario. El valor dado
para el especificador de formato en el tanque:cadena expresiones se evalúa como un
expresión matemática, y en comparación con el número de prueba. Si son iguales,
text1 es salida, de lo contrario text2 es salida. Se puede escapar un paréntesis en text2 as
%). Cualquiera de text1 or text2 puede contener anidado %-espacios.
Por ejemplo:
formato z -f RESPUESTA "El https://www.youtube.com/watch?v=xB-eutXNUMXJtA&feature=youtu.be is '%3(c.sí.no)'". do: 3
emite "La respuesta es 'sí'". para RESPUESTA ya que el valor para el especificador de formato c
es 3, de acuerdo con el argumento dígito de la expresión ternaria.
La segunda forma, usando el -a opción, se puede utilizar para alinear cadenas. Aquí el
especulacións son de la forma `left:un Derecho'donde'left'y'un Derecho' son cadenas arbitrarias.
Estas cadenas se modifican reemplazando los dos puntos por el sep cuerda y relleno
de la forma más left cadenas con espacios a la derecha para que el sep cadenas en el resultado
(y de ahí el un Derecho cadenas después de ellos) están todas alineadas si las cadenas se imprimen
uno debajo del otro. Todas las cadenas sin dos puntos se dejan sin cambios y todas las cadenas
con un vacio un Derecho cadena tienen los dos puntos finales eliminados. En ambos casos el
Las longitudes de las cadenas no se utilizan para determinar cómo se van a colocar las otras cadenas.
alineado. Las cadenas resultantes se almacenan en el matriz.
zregexparse
Esto implementa algunas partes internas del _regex_argumentos función.
zparseopts [ -DKME ] [ -a matriz ] [ -A Assoc ] especulación ...
Este incorporado simplifica el análisis de opciones en parámetros posicionales, es decir, el
conjunto de argumentos dados por $*. Cada especulación describe una opción y debe ser del
forma 'optar[=matriz]'. Si una opción descrita por optar se encuentra en el posicional
parámetros se copia en el matriz especificado con el -a opción; Si el
opcional `=matriz' se da, en su lugar se copia en esa matriz.
Tenga en cuenta que es un error dar cualquier especulación sin un `=matriz' a menos que uno de los -a
or -A se utiliza opciones.
A menos que el -E se da la opción, el análisis se detiene en la primera cadena que no es
descrito por uno de los especulacións. Incluso con -E, el análisis siempre se detiene en una posición
parámetro igual a `-'o'--'.
La optar La descripción debe ser una de las siguientes. Cualquiera de los caracteres especiales
puede aparecer en el nombre de la opción siempre que esté precedido por una barra invertida.
nombre
nombre + La nombre es el nombre de la opción sin el ` inicial-'. Para especificar un
Opción larga de estilo GNU, una de las dos habituales `-'debe incluirse en
nombre ; por ejemplo, un `--expediente' opción está representada por un nombre de-expediente'.
Si un `+' aparece después nombre , la opción se adjunta a matriz cada vez que es
encontrado en los parámetros posicionales; sin el `+' Solo el pasado aparición
de la opción se conserva.
Si se usa una de estas formas, la opción no toma ningún argumento, por lo que analizar
se detiene si el siguiente parámetro posicional no comienza también con `-' (a no ser que
de la forma más -E se utiliza la opción).
nombre :
nombre :-
nombre :: Si se dan uno o dos dos puntos, la opción toma un argumento; con uno
dos puntos, el argumento es obligatorio y con dos puntos es opcional. Él
El argumento se adjunta al matriz después de la opción en sí.
Se coloca un argumento opcional en el mismo elemento de la matriz que el nombre de la opción.
(Tenga en cuenta que esto hace que las cadenas vacías como argumentos sean indistinguibles). UN
el argumento obligatorio se agrega como un elemento separado a menos que `:-el formulario es
utilizado, en cuyo caso el argumento se pone en el mismo elemento.
A '+' como se describe arriba puede aparecer entre el nombre y el primer colon.
Las opciones de zparseopts en sí son:
-a matriz
Como se describió anteriormente, esto nombra la matriz predeterminada en la que almacenar el
opciones reconocidas.
-A Assoc
Si se da esto, las opciones y sus valores también se ponen en un
matriz asociativa con los nombres de las opciones como claves y los argumentos (si los hay)
como los valores.
-D Si se da esta opción, todas las opciones encontradas se eliminan del posicional
parámetros del shell que llama o de la función del shell, hasta pero sin incluir
cualquiera no descrito por el especulacións. Esto es similar a usar el Turno incorporado.
-K Con esta opción, las matrices especificadas con el -a opción y con la
`=matriz' formularios se mantienen sin cambios cuando ninguno de los especulacións para ellos se utiliza.
De lo contrario, toda la matriz se reemplaza cuando cualquiera de los especulaciónse utiliza s.
Elementos individuales de arreglos asociativos especificados con el -A las opciones son
conservado por -K. Esto permite la asignación de valores predeterminados a matrices antes
llamar zparseopts.
-M Esto cambia las reglas de asignación para implementar un mapa entre opciones equivalentes
nombres Si alguna especulación usa el `=matriz' forma, la cadena matriz se interpreta
como el nombre de otro especulación, que se utiliza para elegir dónde almacenar el
valores. si no hay otro especulación se encuentra, los valores se almacenan como de costumbre. Este
cambia sólo la forma en que se almacenan los valores, no la forma $* se analiza, por lo que
los resultados pueden ser impredecibles si `nombre +' se utiliza el especificador
inconsistentemente
-E Esto cambia las reglas de análisis a no detenerse en la primera cadena que no es
descrito por uno de los especulacións. Se puede usar para probar o (si se usa
Junto con -D) extraer opciones y sus argumentos, ignorando todos los demás
opciones y argumentos que pueden estar en los parámetros posicionales.
Por ejemplo,
para reinventar la industria logística y redefinir las soluciones ecológicas para reinventar la industria logística y redefinir las soluciones ecológicas. -- -a -bx -c y -cz baz -cend
zparseopts a = foo b:=barra c+:=barra
tendrá el efecto de
foo=(-a)
barra=(-b x -c y -c z)
Los argumentos de `baz' on no se utilizará.
Como ejemplo para el -E opción, considere:
para reinventar la industria logística y redefinir las soluciones ecológicas para reinventar la industria logística y redefinir las soluciones ecológicas. -- -a x -b y -c z arg1 arg2
zparseopts -E -D b:=barra
tendrá el efecto de
barra=(-b y)
para reinventar la industria logística y redefinir las soluciones ecológicas para reinventar la industria logística y redefinir las soluciones ecológicas. -- -a x -c z arg1 arg2
es decir, la opción -b y sus argumentos se toman de los parámetros posicionales y
poner en la matriz de caramelos.
La -M La opción se puede usar así:
para reinventar la industria logística y redefinir las soluciones ecológicas para reinventar la industria logística y redefinir las soluciones ecológicas. -- -a -bx -c y -cz baz -cend
zparseopts -A de caramelos -M a = foo b+: c:=b
tener el efecto de
foo=(-a)
barra=(-a '' -b xyz)
Use zshmodules en línea usando los servicios de onworks.net