![Articulos tematica Microsoft](../images/8weblinux-400.jpeg)
El comando set de Linux es un comando de shell implícito que le permite mostrar o establecer factores tanto del shell como del clima.
En esta guía, cubrimos el comando set y mostramos las diferentes formas en que se puede usar la utilidad de línea de comando.
Sintaxis
Concha de Bourne (sh):
set = palabra
Cáscara de Korn (ksh):
set [+ -aefhkmnopstuvx] [+ -o opción]… [+ -A nombre]
Opciones: Bourne Shell (sh)
En sh, el comando set incorporado tiene las siguientes opciones:
- Una opción de dos guiones ("-") significa el final de una lista de opciones. Esta opción es principalmente útil cuando los valores enumerados después de las opciones comienzan con un guión. -A Marcar las variables que se modifican o crean para "exportar"; Las variables de entorno configuradas de esta manera se pasarán a los entornos de cualquier comando posterior -e Salir inmediatamente si un comando sale con un estado de salida distinto de cero -f Deshabilitar la generación de nombre de archivo (globbing) .- h Función de localizar y recordar comandos como las funciones están definidas (los comandos de función generalmente se ubican cuando se ejecuta la función) .- k Todos los argumentos de palabras clave se colocan en el entorno para un comando,
El uso de + en lugar de - hace que estos indicadores se apaguen. Estos indicadores también se pueden usar después de la invocación del propio shell. El conjunto actual de banderas está en la variable $ -. Los argumentos restantes son parámetros posicionales y se asignan, en orden, a $ 1, $ 2, etc. Si no se dan argumentos, se imprimen los valores de todos los nombres.
Para cada nombre, el comando unset elimina la variable o el valor de función correspondiente. Las variables especiales PATH, PS1, PS2, MAILCHECK e IF no se pueden desarmar.
Con el comando de exportación integrado, los nombres se marcan para la exportación automática al entorno de los comandos ejecutados posteriormente. Si no se proporcionan argumentos, los nombres de las variables que están marcadas para la exportación se enumeran durante la ejecución del shell actual. Los nombres de las funciones no se exportan.
Opciones: C Shell (csh)
En csh, si no se especifican argumentos, set devuelve los valores de todas las variables de shell. Los valores de varias palabras se muestran como una lista entre paréntesis. Con el argumento var solo, set asigna un valor vacío (nulo) a la variable var. Con argumentos de la forma var = valor, set asigna un valor a var, donde valor es uno de los siguientes:
palabra Una sola palabra (o cadena entre comillas). (lista de palabras) Una lista de palabras separadas por espacios entre paréntesis.
Los valores son el comando expandido y el nombre de archivo antes de ser asignados. El conjunto de formas var = palabra reemplaza la enésima palabra en un valor de varias palabras por palabra.
unset elimina las variables cuyos nombres coinciden (reemplazando los nombres de los archivos) con el patrón. Todas las variables se eliminan con "unset *"; Sin embargo, esta es una muy mala idea si no sabe lo que está haciendo.
Opciones: K Shell (ksh) En ksh, el comando set toma las siguientes opciones:
-Una asignación de matriz. Borre el nombre de la variable y asigne valores secuencialmente desde la lista de argumentos. Si se usa + A, el nombre de la variable no se desarma primero.
-A Todas las variables posteriores que se definen se exportan automáticamente. -E Si un comando tiene un estado de salida distinto de cero, ejecute la captura ERR (si está configurada) y salga. Este modo está desactivado al leer perfiles. -F Desactiva la generación de nombre de archivo (globbing). -H Cada comando se convierte en un alias de seguimiento cuando se encuentra por primera vez. -K Todos los argumentos de asignación de variables se colocan en un entorno de comando, no solo los que preceden al nombre del comando. -m Los trabajos en segundo plano se ejecutan en un grupo de procesos separado y se imprime una línea al finalizar. El estado de salida de los trabajos en segundo plano se informa en un mensaje de finalización. En sistemas con control de trabajos, este indicador se establece automáticamente para shells interactivos. -N Lea los comandos y compruebe si hay errores de sintaxis, pero no los ejecute. Ignorado para proyectiles interactivos.
o opción El argumento de la opción puede ser uno de los siguientes: allexport Igual que -a.errexit Igual que -e.bgnice Todos los trabajos en segundo plano se ejecutan con una prioridad más baja, que es el modo predeterminado. -line editor para el comando entry.emacs
Lo coloca en un editor en línea estilo gmacs para el comando entry.ignoreeof El shell no se cerrará al final del archivo. Se debe usar el comando exit.keyword Igual que -k.markdirs Todos los nombres de directorio resultantes de la generación del nombre de archivo tienen una “/” al final.
Monitor Igual que -m.noclobber Evita la redirección “>” truncar archivos existentes. Requerir "> |" para truncar un archivo cuando está habilitado noexec Igual que -n.noglob Igual que -f.nolog No guarde las definiciones de funciones en el archivo de almacenamiento. as -h.vi Lo coloca en el modo de inserción de un editor en línea de estilo vi hasta que presione escape.
Este argumento de opción lo pone en modo de control. Un retorno envía la línea.viraw Cada carácter se procesa como está escrito en el modo vi.xtrace Igual que -x. Si no se proporciona un nombre de opción, se imprime la configuración de la opción actual. -P Desactiva la representación de $ HOME / .profile y usa el archivo / etc / suid_profile en lugar del archivo ENV.
Este modo está habilitado siempre que el uid efectivo (ID de usuario) no sea igual al uid real, o cuando el gid efectivo (ID de grupo) no sea igual al gid real. Deshabilitar esto hace que el uid y gid efectivos se establezcan en el uid y gid reales. -s Ordena los parámetros posicionales lexicográficamente. -t Salir después de leer y ejecutar un comando. -u Tratar los parámetros no configurados como un error al sustituirlos. -v Imprime las líneas de entrada del shell a medida que se leen. -x Imprime los comandos y sus argumentos a medida que se ejecutan. - Desactiva los indicadores -x y -v y deja de examinar argumentos en busca de indicadores. - No cambie ninguno de los indicadores; Útil para establecer $ 1 en un valor que comience con -. Si ningún argumento sigue a esta bandera, los parámetros posicionales no se establecen.
El uso de + en lugar de - hace que estos indicadores se apaguen. Estos indicadores también se pueden utilizar después de invocar el shell. El conjunto actual de banderas está en $ -. A menos que se especifique -A, los argumentos restantes son parámetros posicionales y se asignan, en orden, a “$ 1 $ 2…”. Si no se proporcionan argumentos, los nombres y valores de todas las variables se imprimen en la salida estándar.
Las variables dadas por la lista de nombres se desasignan automáticamente: sus valores y atributos se borran. Las variables de solo lectura no se pueden desarmar. Si se establece la bandera -f, los nombres se refieren a los nombres de las funciones. Desarmar ERRNO, LINENO, MAILCHECK, OPTARG, OPTIND, RANDOM, SECONDS, TMOUT y _ elimina su significado especial incluso si se asignan más tarde.
Cuando se usa unset, las variables dadas por la lista de nombres tampoco están asignadas: sus valores y atributos se borran. Las variables de solo lectura no se pueden desarmar. Si se establece la bandera -f, los nombres se refieren a los nombres de las funciones. Desarmar ERRNO, LINENO, MAILCHECK, OPTARG, OPTIND, RANDOM, SECONDS, TMOUT y _ elimina su significado especial incluso si se asignan más tarde.
Con el comando de exportación integrado, los nombres se marcan para la exportación automática al entorno de los comandos ejecutados posteriormente. Los comandos ksh que están precedidos por uno o dos caracteres “*” (asteriscos) se tratan especialmente de la siguiente manera:
Las listas de asignación de variables que preceden al comando permanecen vigentes cuando se completa el comando.
Las redirecciones de E / S se procesan después de las asignaciones de variables.
Los errores hacen que se anule un script que los contiene.
Las palabras, que siguen a un comando precedido por ** que tienen la forma de una asignación de variable, se expanden con las mismas reglas que una asignación de variable. Este mapeo significa que la sustitución de tilde ocurre después del signo = y no se realizan la separación por sílabas ni la generación de nombres de archivo.
Sin usted, esta web no existiria. Gracias por visitarme, espero que le haya gustado y vuelva. Gracias ☺️
Fecha actualización el 2021-12-13. Fecha publicación el 2021-12-13. Categoria: linux Autor: Oscar olg Mapa del sitio Fuente: bollyinside