Etiquetas, etiquetado de comandos en Gnu/Linux para facilitar el trabajo
En el siguiente artículo vamos a echar un vistazo a cómo podemos utilizar etiquetas en la terminal. Añadir una etiqueta a un comando de Gnu/Linux puede facilitar un poco su reutilización. Si tienes dificultades para recordar comandos complejos o ubicaciones importantes en el sistema de archivos, las etiquetas te pueden resultar de gran ayuda.
Las etiquetas ofrecen a los usuarios una manera sencilla de asociar cadenas que parecen etiquetas hash (#HOME) con los comandos que ejecutamos en la línea de comandos. Una vez que se establece una etiqueta, podremos volver a ejecutar el comando asociado sin necesidad de tener que volver a escribirlo. En su lugar, simplemente vamos a tener que escribir la etiqueta. La idea es usar etiquetas que sean fáciles de recordar, para los comandos que son complejos o que puedan resultar molestos a la hora de volver a escribirlos.
A diferencia de la configuración de un alias, las etiquetas están asociadas con el historial de comandos. Por esta razón, solo permanecen disponibles si los sigues usando. Una vez que dejes de utilizar una etiqueta, desaparecerá lentamente del historial de comandos. Para la mayoría de los usuarios, eso significa que podremos escribir 500 o 1000 comandos antes de que esto suceda. Por lo tanto, las etiquetas son una buena forma de volver a ejecutar comandos que serán útiles durante un cierto período de tiempo, pero no para aquellos que queramos que estén disponibles de forma permanente.
Configurar etiquetas en Ubuntu
Para configurar una etiqueta, en una terminal (Ctrl+Alt+T) tan solo necesitaremos escribir un comando y luego añadir su etiqueta al final. La etiqueta debe comenzar con un signo # y debe ir seguida inmediatamente por una cadena de letras. Esto evita que la etiqueta se trate como parte del comando, en cambio se maneja como un comentario que se incluye en nuestro archivo de historial de comandos. Este es un ejemplo simple, aun que no muy útil:
echo "Esto es un ejemplo de etiqueta" #TAG
Este comando en particular ahora está asociado con la etiqueta #TAG en nuestro historial de comandos. Ahora si utilizamos el comando history, lo veremos disponible:
history | grep TAG
Después podremos volver a ejecutar este comando escribiendo !? seguido de la etiqueta:
!? #TAG
La utilidad real de esto es utilizarlo cuando el comando que queramos ejecutar repetidamente sea tan complejo que resulte difícil de recordar o simplemente molesto de escribir. Por ejemplo, para enumerar los archivos o directorios actualizados más recientemente, podremos por ejemplo usar una etiqueta como #RECIENTE y asociarla con el comando ls apropiado. El siguiente comando enumera los archivos en nuestro directorio de inicio, independientemente de dónde nos encontremos actualmente en el sistema de archivos. Los enumera en orden inverso de fecha, y muestra solo los cinco archivos creados o modificados más recientes.
ls -ltr ~ | tail -5 #RECIENTE
Podremos volver a ejecutar comandos etiquetados usando Ctrl+r (mantén presionada la tecla Ctrl y presione la tecla ‘r’) y después escribe la etiqueta (por ejemplo, #RECIENTE). De hecho, si solo estás usando una etiqueta, simplemente escribiendo # después de pulsar Ctrl-r, debería aparecer el comando automáticamente. La secuencia Ctrl+r, como ocurre con !?, busca en nuestro historial de comandos la cadena que escribimos.
Etiquetado de ubicaciones
Algunos usuarios utilizan etiquetas para recordar ubicaciones particulares del sistema de archivos. Esto facilita el regreso a los directorios en los que estemos trabajando, sin tener que escribir las rutas de directorios completas.
cd /var/www/html #LOCALHOST
En este ejemplo, como se muestra en la anterior captura, siempre que necesitemos movernos al directorio asociado con #LOCALHOST, tendremos una forma rápida de hacerlo.
Hay que decir que no es necesario que las etiquetas estén en mayúsculas, aunque esto las hace más fáciles de reconocer. Además así es poco probable que entren en conflicto con los comandos o nombres de archivo que también están en el historial de comandos.
Alternativas a las etiquetas
Si bien las etiquetas pueden ser muy útiles, existen otras formas de hacer las mismas cosas que podemos hacer con ellas. Para que los comandos los podamos repetir de forma sencilla, también podemos asignarlos a un alias:
alias recientes=”ls -ltr ~ | tail -5”
Para hacer que varios comandos sean fáciles de repetir, también podremos convertirlos en un script. Si abrimos un archivo .sh con el siguiente comando:
sudo vim archivosActualizados.sh
Y dentro colocamos las siguientes líneas, podremos ver el mismo resultado que si utilizamos el alias anterior:
#!/bin/bash echo “Most recently updated files:” ls -ltr ~ | tail -5
También podemos volver a ejecutar comandos recientes buscándolo con el comando history:
hitory | tail -20
Una vez localizado solo hay que escribir ! seguido del número a la izquierda del comando que queremos volver a ejecutar (por ejemplo; !8).