stringtranslate.com

alias (comando)

En informática , alias es un comando en varios intérpretes de línea de comandos ( shells ), que permite reemplazar una palabra por otra cadena. [1] Se utiliza principalmente para abreviar un comando del sistema o para agregar argumentos predeterminados a un comando utilizado habitualmente. aliasestá disponible en shells Unix , AmigaDOS , 4DOS / 4NT , KolibriOS , Windows PowerShell , ReactOS y el shell EFI . [2] La funcionalidad de alias en los sistemas operativos MS-DOS y Microsoft Windows la proporciona la utilidad de línea de comandos DOSKey .

Un alias durará toda la vida de la sesión de shell. Los alias utilizados habitualmente se pueden configurar desde el archivo rc del shell (como .bashrc) para que estén disponibles al inicio de la sesión de shell correspondiente. Los comandos de alias pueden escribirse directamente en el archivo de configuración o obtenerse de un archivo separado.

Historia

En Unix, los alias se introdujeron en el shell C y sobreviven en shells descendientes como tcsh y bash . Los alias del shell C estaban estrictamente limitados a una línea. Esto fue útil para crear comandos de acceso directo simples, pero no construcciones más complejas. Las versiones anteriores del shell Bourne no ofrecían alias, pero sí proporcionaban funciones que son más poderosas que el concepto de alias csh. El concepto de alias de csh se importó a Bourne Again Shell (bash) y Korn Shell (ksh). Con shells que admiten funciones y alias pero sin scripts de shell en línea parametrizados, se recomienda el uso de funciones siempre que sea posible. Los casos en los que se necesitan alias incluyen situaciones en las que se requieren alias encadenados (bash y ksh). El comando alias también se ha portado al sistema operativo IBM i . [3]

Uso

Creando alias

Shells comunes de Unix

Se pueden crear alias no persistentes proporcionando pares de nombre/valor como argumentos para el comando alias. En shells de Unix la sintaxis es:

alias gc = 'git commit' 

caparazón C

La sintaxis correspondiente en el shell C o el shell tcsh es:

alias gc "git commit"

Este alias significa que cuando el comando gcse lee en el shell, será reemplazado git commity ese comando se ejecutará en su lugar.

4DOS

En el shell 4DOS/4NT se utiliza la siguiente sintaxis para definir cpcomo alias para el copycomando 4DOS:

copia de alias cp

WindowsPowerShell

Para crear un nuevo alias en Windows PowerShell, new-aliasse puede utilizar el cmdlet:

nuevo-alias  ci  copiar-elemento

Esto crea un nuevo alias llamado cique será reemplazado por el copy-itemcmdlet cuando se ejecute.

En PowerShell, no se puede utilizar un alias para especificar argumentos predeterminados para un comando. En su lugar, esto se debe hacer agregando elementos a la colección $PSDefaultParameterValues, una de las variables de preferencia de PowerShell.

Ver alias definidos actualmente

Para ver los alias definidos se pueden utilizar los siguientes comandos:

alias # Usado sin argumentos; muestra una lista de todos los alias actuales alias -p # Enumera los alias de una manera que permita la recreación obteniendo la salida; no disponible en 4DOS/4NT y PowerShell alias myAlias ​​# Muestra el comando para un alias definido     

Anulando alias

En shells de Unix, es posible anular un alias citando cualquier carácter en el nombre del alias cuando se utiliza el alias. Por ejemplo, considere la siguiente definición de alias:

alias ls = 'ls -la' 

Para anular este alias y ejecutar el lscomando como se definió originalmente, se puede utilizar la siguiente sintaxis:

'yo'

o

\ls

En el shell 4DOS/4NT es posible anular un alias anteponiéndolo con un asterisco. Por ejemplo, considere la siguiente definición de alias:

alias dir = *dir /2/p

El asterisco en la segunda instancia de hace que se invoque direl alias sin alias , lo que evita la expansión recursiva del alias. dirAdemás, el usuario puede obtener el comportamiento sin alias diren la línea de comando usando la misma sintaxis:

*directorio

Cambiar alias

En Windows PowerShell, el setverbo se puede utilizar con el aliascmdlet para cambiar un alias existente:

establecer alias  ci  cls

El alias ciahora apuntará al clscomando.

En el shell 4DOS/4NT, el esetcomando proporciona una línea de comando interactiva para editar un alias existente:

eset /a cp

Esto /ahace que se edite el alias cp, a diferencia de una variable de entorno del mismo nombre.

Eliminando alias

En shells Unix y 4DOS/4NT, los alias se pueden eliminar ejecutando el unaliascomando:

unalias  copy # Elimina el alias de copia unalias -a # El modificador -a eliminará todos los alias; no disponible en 4DOS/4NT unalias * # equivalente en 4DOS/4NT de `unalias -a` - se admiten comodines     

En Windows PowerShell, el alias se puede eliminar de la unidad alias:\ usando remove-item:

remove-item  alias : ci  # Elimina el alias ci

Características

Encadenamiento

Un alias suele sustituir sólo la primera palabra. Pero algunos shells, como bashy ksh, permiten reemplazar una secuencia o palabras. Esta característica particular no está disponible a través del mecanismo de función.

La sintaxis habitual es definir el primer alias con un carácter de espacio al final. Por ejemplo, usando los dos alias:

alias list = 'ls ' # tenga en cuenta el espacio final para activar el encadenamiento alias long = '-Flas' # opciones para ls para un listado largo    

permite:

list  long  myfile # se convierte en "ls -Flas myfile" cuando se ejecuta 

para una lista larga, donde "largo" también se evalúa como un alias.

Argumentos de comando

En C Shell , los argumentos se pueden incrustar dentro del comando usando la cadena \!* . Por ejemplo, con este alias:

 alias ls-más 'ls \!* | más'

ls-more /etc /usrse expande para ls /etc /usr | moreenumerar el contenido de los directorios /etc y /usr, haciendo una pausa después de cada pantalla completa. Sin \!* ,

 alias ls-más 'ls | más'

en su lugar, se expandiría a ls | more /etc /usrlo que intenta incorrectamente abrir los directorios en more . [4]

En cambio, los shells Bash y Korn utilizan funciones de shell; consulte § Alternativas a continuación.

Alternativas

Por lo general, los alias deben mantenerse simples. Cuando no sea sencillo, la recomendación suele ser utilizar uno de los siguientes:

La forma más común de alias, que simplemente agrega algunas opciones a un comando y luego incluye el resto de la línea de comando, se puede convertir fácilmente en funciones de shell siguiendo este patrón:

alias ll = 'ls -Flas' # listado largo, alias
ll () { ls -Flas " $@ " ; } # listado largo, función          

Para evitar que una función se llame a sí misma de forma recursiva , utilice command:

ls () { comando ls --color = auto " $@ " ; }        

En shells Bourne más antiguos se utiliza /bin/lsen lugar de command ls.

Referencias

  1. ^ Rugheimer, Hannes (10 de junio de 2020). Referencia rápida de AmigaDOS: Rügheimer, Hannes: descarga, préstamo y transmisión gratuitos: Internet Archive. ISBN 9781557550491. Consultado el 12 de septiembre de 2020 a través de Internet Archive.
  2. ^ "Secuencias de comandos y shells EFI". Intel . Consultado el 25 de septiembre de 2013 .
  3. ^ IBM . "Qshell de programación de IBM System i versión 7.2" (PDF) . IBM . Consultado el 5 de septiembre de 2020 .
  4. ^ "Ejemplos de cómo pasar argumentos dados a un alias de comando". Ayuda UNIX . Universidad de Edimburgo . Archivado desde el original el 25 de noviembre de 2012.

Otras lecturas

enlaces externos