El Bash (Bourne Again Shell) es una de las herramientas más potentes y utilizadas por los administradores de sistemas. Conocer sus trucos y funcionalidades avanzadas no solo mejora la eficiencia en el trabajo diario, sino que también puede resolver problemas de manera rápida y eficaz. En este artículo, te presentamos los 10 mejores trucos de Bash que todo administrador de sistemas debería conocer.
1. Uso de !!
para repetir el último comando con privilegios de superusuario
Este comando es una joya para quienes trabajan en servidores. Si olvidaste anteponer sudo
a un comando, simplemente usa sudo !!
para ejecutarlo nuevamente con privilegios de superusuario.
$ apt-get update
Permission denied
$ sudo !!
sudo apt-get update
2. Expansión de llaves para crear múltiples archivos o directorios
Con la expansión de llaves puedes crear múltiples archivos o directorios en una sola línea de comando, ahorrando tiempo y esfuerzo.
$ touch archivo{1..3}.txt
# Crea archivo1.txt, archivo2.txt y archivo3.txt
3. Uso de Ctrl + r
para búsqueda inversa en el historial de comandos
Este atajo permite buscar rápidamente un comando que hayas utilizado anteriormente.
(reverse-i-search)`ssh': ssh usuario@servidor.com
Presiona Ctrl + r
y escribe una parte del comando que deseas encontrar. Este truco es especialmente útil para comandos complejos.
4. Redirección de salida y errores a un archivo
Para capturar tanto la salida estándar como los errores estándar de un comando en un archivo, usa &>
o 2>&1
.
$ comando &> salida.txt
# O
$ comando > salida.txt 2>&1
5. Uso de xargs
para ejecutar comandos en múltiples archivos
Combinar find
con xargs
te permite ejecutar comandos sobre un gran número de archivos de manera eficiente.
$ find . -name "*.log" | xargs rm
# Elimina todos los archivos .log en el directorio actual y subdirectorios
6. Sustitución de comandos con $(comando)
La sustitución de comandos permite capturar la salida de un comando y usarla en otro contexto.
$ fecha=$(date +%Y-%m-%d)
$ echo "La fecha de hoy es $fecha"
7. Uso de alias
para crear comandos personalizados
Crea alias para tus comandos más usados y ahorra tiempo escribiendo en la terminal.
$ alias ll='ls -la'
$ ll
8. Uso de for
para bucles en la línea de comandos
Los bucles for
son ideales para realizar operaciones repetitivas sobre una lista de elementos.
$ for archivo in *.txt; do mv "$archivo" "${archivo%.txt}.bak"; done
# Renombra todos los archivos .txt a .bak
9. Uso de grep
para buscar patrones en archivos
grep
es una herramienta imprescindible para buscar texto dentro de archivos.
$ grep -i "error" archivo.log
# Busca la palabra "error" en archivo.log, sin importar mayúsculas o minúsculas
10. Uso de sed
para editar texto en streams
Con sed
puedes realizar ediciones rápidas y no interactivas en texto.
$ sed 's/palabra_antigua/palabra_nueva/g' archivo.txt
# Reemplaza todas las ocurrencias de "palabra_antigua" por "palabra_nueva" en archivo.txt
Fuente:
- Advanced Bash-Scripting Guide
- Conversaciones en Reddit: r/linux y r/sysadmin
Estos trucos de Bash son esenciales para cualquier administrador de sistemas que busque optimizar su flujo de trabajo y convertirse en un verdadero experto en la línea de comandos.
¿Tienes algún truco adicional que te gustaría compartir? ¡Déjalo en los comentarios!