Después de haber aprendido y practicado los comandos básicos de Linux, es hora de profundizar en otros comandos my en cómo gestionar tu sistema de manera más eficiente. En esta segunda parte, exploraremos herramientas para manipular datos, automatizar tareas y analizar el sistema.
1. Manipulación Avanzada de Archivos y Texto
grep – Buscar en archivos
Permite buscar patrones de texto dentro de un archivo. Por ejemplo:
grep "Linux" ejemplo.txt # Busca la palabra "Linux" en el archivo
grep -i "linux" ejemplo.txt # Ignora mayúsculas y minúsculas
grep -r "comando" . # Busca recursivamente en un directorio
find – Buscar archivos y directorios
Permite localizar archivos y carpetas en tu sistema basándose en varios criterios.
find / -name "archivo.txt" # Busca un archivo específico
find . -type d -name "subcarpeta" # Busca un directorio específico
find . -mtime -1 # Archivos modificados en las últimas 24 horas
wc – Contar palabras, líneas y caracteres
Cuenta el número de palabras, líneas y caracteres en un archivo.
wc ejemplo.txt # Muestra el conteo de líneas, palabras y caracteres
wc -l ejemplo.txt # Solo cuenta líneas
sort y uniq – Ordenar y eliminar duplicados
Organiza datos alfabéticamente o numéricamente, y elimina duplicados.
sort ejemplo.txt # Ordena alfabéticamente
sort -n numeros.txt # Ordena numéricamente
uniq -c duplicados.txt # Elimina duplicados y cuenta ocurrencias
awk – Procesar y extraer datos
awk
es poderoso para analizar y extraer información estructurada de archivos.
awk '{print $1}' ejemplo.txt # Imprime la primera columna de un archivo
awk '/Linux/ {print $0}' ejemplo.txt # Filtra líneas que contienen "Linux"
2. Gestión de Permisos y Usuarios
chmod – Cambiar permisos
Configura los permisos de lectura, escritura y ejecución.
sudo chmod 755 script.sh # Permite ejecución para el usuario
sudo chmod u+x archivo.sh # Agrega permisos de ejecución solo al usuario
chown – Cambiar dueño de archivos
Cambia el propietario o grupo de un archivo.
sudo chown usuario:grupo archivo.txt
sudo chown -R usuario:grupo carpeta/ # Cambia propietario recursivamente
adduser y deluser – Agregar y eliminar usuarios
Gestiona cuentas de usuarios en el sistema.
sudo adduser nuevo_usuario # Crea un nuevo usuario
sudo deluser usuario # Elimina un usuario
3. Automatización de Tareas
cron – Programar tareas
Configura tareas repetitivas con el programador de tareas cron
.
crontab -e # Edita la tabla de cron
# Ejemplo: Ejecuta un script cada día a las 3 AM
0 3 * * * /ruta/a/tu/script.sh
alias – Crear atajos
Simplifica comandos largos creando atajos.
alias ll='ls -la' # Atajo para listar archivos con detalles
alias actualizar='sudo apt update && sudo apt upgrade' # Atajo para actualizar el sistema
4. Análisis del Sistema
ps – Ver procesos en ejecución
Lista los procesos que se están ejecutando en tu sistema.
ps aux # Muestra todos los procesos
ps -ef | grep proceso # Filtra procesos específicos
kill – Terminar procesos
Finaliza procesos usando su PID.
kill 1234 # Termina el proceso con PID 1234
kill -9 1234 # Fuerza la terminación del proceso
htop – Monitor del sistema
Es una alternativa visual a top
para monitorear el uso de recursos.
htop # Inicia la herramienta
du – Analizar el uso del disco
Muestra el espacio ocupado por archivos y directorios.
du -sh carpeta/ # Muestra el espacio total de una carpeta
du -h --max-depth=1 # Analiza el espacio de cada subcarpeta
5. Gestión de Redes
ping – Comprobar conectividad
Prueba la conexión con otro dispositivo o servidor.
ping google.com # Envía paquetes ICMP a Google
curl – Realizar solicitudes web
Descarga contenido o interactúa con servidores web.
curl http://example.com # Descarga contenido de una URL
curl -O http://example.com/archivo.zip # Descarga un archivo
netstat – Análisis de conexiones
Muestra las conexiones de red activas.
netstat -tuln # Lista puertos abiertos y servicios en escucha
Ejercicio Práctico: Comandos Avanzados
Pon en práctica lo aprendido realizando las siguientes tareas:
- Buscar y procesar datos
- Busca todas las líneas que contienen “Linux” en
ejemplo.txt
usandogrep
. - Cuenta el número de líneas únicas en el archivo con
uniq
.
- Busca todas las líneas que contienen “Linux” en
- Gestionar permisos
- Crea un archivo llamado
script.sh
y hazlo ejecutable para todos los usuarios.
- Crea un archivo llamado
- Automatizar una tarea
- Programa con
cron
un comando que cree un archivo de respaldo de una carpeta cada noche.
- Programa con
- Monitorear el sistema
- Usa
htop
para identificar procesos con alto uso de CPU y termínalos conkill
.
- Usa
- Explorar la red
- Verifica la conectividad con un servidor mediante
ping
y analiza los puertos abiertos connetstat
.
- Verifica la conectividad con un servidor mediante
Conclusión
Esta segunda parte te ha proporcionado mas comandos para trabajar con Linux de manera eficiente y profesional. Al dominar estos comandos, podrás gestionar mejor archivos, usuarios, tareas, y analizar tu sistema y red. Recuerda: practicar y experimentar es la clave para convertirte en un experto. ¡Sigue explorando!
Deja un comentario