mandato ksh

Finalidad

Invoca el shell Korn.

Sintaxis

ksh [ -i ] [{ + | - } { a e f h k m n p t u v x }] [ -o Opción ... ] [ -c Serie | -s | -r | Archivo [ Parámetro ]]

Nota: Anterior a un distintivo con + (más) en lugar de - (menos) desactiva el distintivo.

Descripción

El mandato ksh invoca el shell Korn, que es un intérprete de mandatos interactivo y un lenguaje de programación de mandatos. El shell lleva a cabo mandatos de forma interactiva desde un teclado de terminal o desde un archivo.

El shell Korn es compatible con el shell Bourne (invocado con el comando bsh ) y contiene la mayoría de las características del shell Bourne, así como varias de las mejores características de la shell C.

Nota: La espera de ksh incorporada se comporta de una manera similar a la API de espera padre () .

También está disponible una versión mejorada del shell Korn, denominada ksh93. El shell Korn mejorado tiene características adicionales que no están disponibles en el shell Korn predeterminado.

Además, está disponible una versión restringida del shell Korn, denominada rksh. El shell Korn restringido permite a los administradores proporcionar un entorno de ejecución controlado para los usuarios.

Distintivos

Elemento Descripción
-a Exporta automáticamente todos los parámetros siguientes que están definidos.
C. Serie Hace que el shell Korn lea los mandatos de la variable Serie . Este distintivo no se puede utilizar con el distintivo -s o con el parámetro Archivo[Parámetro].
-e Ejecuta la condición de excepción ERR , si se establece, y sale si un mandato tiene un estado de salida distinto de cero, a menos que se cumplan las condiciones siguientes:
  • El simple mandato está contenido en una "& &" o lista "| |".
  • El comando simple sigue inmediatamente "if", "while" o "until".
  • El mandato simple está contenido en una interconexión a continuación de "!".
Esta modalidad está inhabilitada cuando se leen los perfiles.
-f Inhabilita la sustitución de nombres de archivo.
-h Designa cada mandato como un seudónimo con seguimiento la primera vez que se encuentra.
-i Indica que el shell es interactivo. También se indica un shell interactivo si la entrada y salida de shell están conectadas a un terminal (según lo determinado por la subrutina ioctl ). En este caso, la variable de entorno TERM se ignora (de modo que el mandato kill 0 no mata un shell interactivo) y la señal INTR se captura y se ignora (para que se pueda interrumpir un estado de espera). En todos los casos, el shell ignora la señal QUIT .
-k Coloca todos los argumentos de asignación de parámetros en el entorno para un mandato, no sólo los argumentos que preceden al nombre del mandato.
-m Ejecuta trabajos en segundo plano en un proceso independiente e imprime una línea cuando se finaliza. Se informa del estado de salida de trabajos en segundo plano en un mensaje de finalización. En los sistemas que disponen de control de trabajos, este distintivo se activa automáticamente para los shells interactivos.
-n Lee mandatos y comprueba si existen errores de sintaxis, pero no los ejecuta. Este distintivo se ignora para shells interactivos.
-o Opción Imprime los valores de la opción actual y un mensaje de error si no especifica un argumento. Puede utilizar este distintivo para habilitar cualquiera de las opciones siguientes:
allexport
Igual que el distintivo -a.
errexit
Igual que el distintivo -e.
bgnice
Ejecuta todos los trabajos en segundo plano a una prioridad inferior. Se trata de la modalidad por omisión.
emacs
Entra en un editor en línea de estilo emacs-para la entrada de mandatos.
gmacs
Entra en un editor en línea estilo gmacs para entrada de mandatos.
ignoto
No sale del shell cuando encuentra un carácter de fin de archivo. Debe utilizar el mandato Salida o alterar temporalmente el distintivo y salir del shell pulsando la secuencia de teclas Control-D más de 11 veces.
palabra clave
Es igual al distintivo -k.
marcardirs
Añade una / (barra inclinada) a todos los nombres de directorio que son el resultado de la sustitución de nombre de archivo.
supervisor
Igual que el distintivo -m.
noclobber
Impide que la redirección trunque archivos existentes. Cuando especifique esta opción, utilice el símbolo de redirección >| (careta derecha, símbolo de conducto) para truncar un archivo.
noexec
Igual que el distintivo -n.
noglob
Igual que el distintivo -f.
nolog
Impide que las definiciones de función se guarden en el archivo histórico.
nunset
Igual que el distintivo -u.
privilegiado
Igual que el distintivo -p.
verbose
Igual que el distintivo -v.
trackall
Igual que el distintivo -h.
vi
Especifica la modalidad de inserción de un editor en línea de estilo vi para la entrada de mandatos. Si entra el carácter de escape 033, situará el editor en modalidad de movimiento. Si pulsa la tecla Intro, enviará una línea.
viraw
Procesa cada carácter que se escribe en modalidad vi.
xtrace
Igual que el distintivo -x.

Puede establecer más de una opción en una única línea de mandatos ksh.

-p Inhabilita el proceso del archivo $HOME/.profile cuando se utiliza el shell como shell de inicio de sesión.
-r Ejecuta un shell restringido. Con un shell restringido no puede:
  • Cambie el directorio de trabajo actual.
  • Establezca el valor de la variable SHELL, ENVo PATH .
  • Especifique el nombre de vía de acceso de un mandato que contiene una / (barra inclinada).
  • Redirigir la salida de un mandato con > (careta derecha), >| (careta derecha, símbolo de conducto), <> (careta izquierda, acento derecho) o >> (dos intercalaciones correctas).
El uso de este distintivo es el mismo que emitir el mandato rksh .
-s Hace que el mandato ksh lea los mandatos de la entrada estándar. La salida de shell, excepto la salida de los mandatos especiales, se graba en el descriptor de archivo 2. Este parámetro no se puede utilizar con el distintivo C. o con el parámetro Archivo[Parámetro].
-T Sale después de leer y ejecutar un mandato.
-u Cuando se sustituyan parámetros a los que se ha eliminado la definición, los interpreta como errores.
-v Imprime las líneas de entrada del shell a medida que se leen.
-x Imprime mandatos ejecutados y sus argumentos.

Archivos

Elemento Descripción
/usr/bin/ksh Contiene el nombre de vía de acceso al shell Korn.
/tmp/sh* Contiene archivos temporales que se crean cuando se abre un shell.