Consejos y trucos esenciales de Bash que todo usuario debe conocer

Consejos y trucos esenciales de Bash que todo usuario debe conocer

Como recién llegado a Linux, la experiencia de abrir una terminal puede ser emocionante y abrumadora a la vez. La terminal ofrece una amplia gama de comandos y funcionalidades, pero ver un cursor parpadeante puede resultar intimidante para los principiantes. Para facilitar esta transición, hemos recopilado una selección de consejos y trucos esenciales de Bash que permiten a los usuarios operar la terminal de forma más eficiente.

Entendiendo Bash versus la Terminal

Es fundamental aclarar la diferencia entre Bash y la terminal. La terminal funciona como la interfaz o aplicación a través de la cual se emiten comandos para interactuar con el sistema operativo. En cambio, Bash es un intérprete de lenguaje de comandos (un intérprete de lenguaje de comandos para sistemas UNIX) que procesa y ejecuta los comandos que se introducen. Por lo tanto, al usar la terminal, se utiliza esencialmente la shell de Bash (o posiblemente otra shell como zsh o fish).Los siguientes consejos y trucos se centran principalmente en optimizar la eficiencia en el entorno de Bash.

1. Utilice alias personalizados para comandos comunes

Escribir comandos largos repetidamente puede resultar engorroso. Usar alias puede optimizar significativamente su flujo de trabajo. Un alias le permite asignar un acceso directo fácil de recordar a un comando más largo, reduciendo así la cantidad de escritura necesaria.

Por ejemplo, en lugar de escribir git status, puede crear un alias como gs. Los alias pueden ser temporales para la sesión o permanentes. Para crear un alias temporal, ejecute:

alias gs="git status"

Ahora, al escribir, gsse ejecutará git status. Para alias permanentes, edite su archivo de configuración de Bash (normalmente ubicado en “~/.bashrc” o “~/.bash_profile”) con su editor de texto favorito, como nano:

sudo nano ~/.bashrc

Agregue sus definiciones de alias al final del archivo, guárdelo y reinicie la terminal o ejecute:

sudo source ~/.bashrc

A partir de ahora, estos alias estarán disponibles para cada sesión. Por ejemplo, utilizo lo siguiente para los comandos de actualización:

alias update='sudo apt update && sudo apt upgrade -y'

De esta manera, con solo escribir update, ejecuto el comando completo. Además, con las funciones, se pueden crear alias que acepten parámetros:

mkcd() {mkdir -p "$1" && cd "$1"}

El comando mkcd projects/new-appcreará el directorio especificado y accederá a él. Asegúrese siempre de no sobrescribir los comandos existentes para evitar confusiones.

2. Busque instantáneamente su historial de comandos

Navegar por el historial de la terminal puede ser tedioso. Afortunadamente, Bash ofrece una herramienta de búsqueda rápida que facilita la revisión de comandos anteriores.

Buscando en el historial de comandos

Simplemente presione Ctrl+ Ry el mensaje cambiará para permitirle comenzar a escribir partes del comando que desee. A medida que escribe, Bash mostrará el último comando coincidente de su historial.

También puede mejorar esta funcionalidad agregando el siguiente fragmento a su archivo “~/.inputrc” (créelo si no existe):

"\e[A": history-search-backward"\e[B": history-search-forwardset show-all-if-ambiguous onset completion-ignore-case on

Después de recargar la terminal, podrá buscar en su historial de comandos escribiendo el inicio del comando, seguido del uso de las teclas de flecha Up/ Down.

3. Comandos en cadena con pipelines y redirección

Bash permite vincular varios comandos para que la salida de uno se utilice como entrada de otro.|Para ello, utilice el operador de canalización ().Por ejemplo, si solo le interesa ver los procesos de Python entre las tareas en ejecución, puede combinar comandos de la siguiente manera:

ps aux | grep python

Encadenamiento de comandos para filtrar procesos

Aquí ps auxse enumeran todos los procesos activos y grepse filtran los asociados con Python. También se pueden concatenar comandos adicionales para crear scripts eficientes. Por ejemplo:

cat logfile.txt | grep "error" | wc -l

Este comando cuenta la cantidad de líneas marcadas como errores en un archivo de registro: tres comandos que trabajan en armonía.

La redirección es otra función crucial. En lugar de imprimir la salida del comando en la terminal, puede guardarla en un archivo. Por ejemplo, para guardar un directorio, puede usar:

ls -l > files.txt

Úselo >>para añadir resultados en lugar de sobrescribirlos. Esta función es especialmente útil para registrar y hacer copias de seguridad de datos.

4. Ejecutar comandos en segundo plano

Si has iniciado un comando largo que ocupa tu terminal, no es necesario iniciar una nueva sesión. En su lugar, envía el comando a segundo plano y continúa usando la terminal.

Presione Ctrl+ Zpara suspender el comando en ejecución y volver al intérprete de comandos. Luego, use:

bg

Esto reanuda el comando en segundo plano. Para ver el estado de sus trabajos, simplemente escriba:

jobs

Para devolver un trabajo en segundo plano al primer plano, utilice:

fg %1

Puede especificar el número de trabajo; de lo contrario, fgse usa la tarea más reciente de forma predeterminada. Si desea que un comando se inicie en segundo plano, añada &al comando:

some_long_task &

Esto permite que el comando se inicie sin interrumpir la terminal. Para evitar que el trabajo finalice al cerrar la terminal, utilice:

disown -h %job

Este comando envía una señal de «no colgar» a ese trabajo al salir del shell. Usarlo nohupal inicio logra un resultado similar, pero tenga en cuenta que los trabajos en segundo plano podrían seguir mostrando resultados en su terminal.

5. Vuelva a ejecutar el último comando con `sudo` (sudo!!)

Este truco en particular soluciona un escenario común: ejecutar un comando que requiere acceso de superusuario. El !!comando recupera el último comando, lo que permite volver a ejecutarlo rápidamente con privilegios elevados.

Por ejemplo, después de intentar ejecutar un script de instalación como ./SCRIPT-NAME.shy recibir un error de permiso, simplemente escriba:

sudo! !

Ingrese su contraseña y estará nuevamente en acción: este pequeño comando puede ahorrarle un tiempo considerable y volverse algo natural a medida que se acostumbre a usarlo.

Consejos y trucos de Bash: Comando de repetición

6. Ejecutar varios comandos a la vez

Para agilizar las tareas, Bash permite la ejecución de varios comandos sucesivamente. Para ejecutar comandos secuencialmente, independientemente del resultado, utilice un punto y coma ( ;):

mkdir newdir; cd newdir; touch file.txt

Si desea que el segundo comando se ejecute solo si el primero tiene éxito, utilice el símbolo & doble ( &&):

sudo apt update && sudo apt upgrade

Por el contrario, si desea que un comando se ejecute sólo si el comando anterior falla, utilice las barras verticales dobles ( ||):

backup_database || echo "Backup failed!"

Bash también permite el procesamiento en segundo plano; simplemente agregue un símbolo & para ejecutar un comando en segundo plano mientras libera su terminal:

python script.py & firefox &

Esto ejecuta tu script de Python mientras inicias Firefox simultáneamente. Con práctica, encadenar comandos y gestionar tareas en segundo plano transformará tu interacción con la terminal en una experiencia más coherente.

7. Descubre comandos con Apropos

El aproposcomando es una excelente herramienta para localizar comandos según las descripciones de las entradas manuales. Si ha utilizado una página de manual, reconocerá los metadatos en la parte superior. Al ejecutar «» aproposseguido de una palabra clave», puede ver todas las herramientas de línea de comandos relevantes.

Consejos y trucos de Bash

Por ejemplo, al escribir, apropos icmpse recupera una lista de comandos relacionados con ese tema. Esta función es especialmente útil para descubrir utilidades desconocidas, como las de ` selinux`; simplemente ejecute` apropos selinuxpara ver los comandos disponibles para administrar las políticas de SELinux.

8. Sustituir elementos en el último comando

Una táctica útil para corregir errores en un comando anterior es usar la sustitución. Si escribes mal un comando por accidente, puedes corregirlo rápidamente usando el ^símbolo de intercalación ( ).

Por ejemplo, si desea hacer ping maketecheasier.compero lo escribe mal como maktecheaser.com, podría ejecutar:

^maktecheaser.com^maketecheasier.com

Este comando reejecuta eficientemente su solicitud de ping con la dirección correcta. Este método es especialmente beneficioso para comandos largos o argumentos complejos. Considere usarlo para corregir errores de redirección de salida, como reemplazar >con >>.

9. Pasar argumentos de comandos anteriores

La !$sintaxis permite reutilizar el último argumento de cualquier comando anterior. Además, las variaciones permiten incorporar argumentos específicos fácilmente.

Por ejemplo, si acaba de editar un archivo nano samplescript.shy desea otorgarle permisos de ejecución, simplemente ejecute:

chmod 755! $

También puedes usar ./!:2para hacer referencia al segundo argumento del comando anterior. Aquí tienes un resumen rápido de las opciones de sustitución:

!^ - first argument!* - all arguments!:2-$ - second through last arguments!:2-4 - second through fourth arguments

Dado que Bash contiene un historial de aproximadamente 100 argumentos, esta funcionalidad puede mejorar significativamente su eficiencia durante el uso de la terminal.

Esperamos que estos consejos y trucos de Bash te hayan resultado útiles y te ayuden a ejecutar comandos de forma más eficaz en la terminal.¡Que disfrutes creando scripts en Bash!

Fuente e imágenes

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *