2. Comandos Básicos de Unix/Linux
Navegación por el Sistema de Archivos
-
ls- Listar el contenido de un directorio:ls: Muestra los archivos y directorios en el directorio actual.ls -l: Muestra los archivos y directorios con detalles (permisos, número de enlaces, propietario, grupo, tamaño, fecha y hora de última modificación).ls -a: Muestra todos los archivos, incluyendo los ocultos (aquellos que comienzan con un punto.).ls -la: Combina las opciones-ly-apara mostrar todos los archivos con detalles.- Ejemplo:
ls -la /home/rafa
-
cd- Cambiar de directorio:cd: Cambia al directorio home del usuario.cd [directorio]: Cambia al directorio especificado.cd ..: Sube un nivel en el árbol de directorios.cd -: Cambia al directorio anterior.- Ejemplo:
cd /var/log
cd ..
cd -
-
pwd- Imprimir el directorio de trabajo actual:pwd: Muestra la ruta completa del directorio de trabajo actual.- Ejemplo:
pwd
-
mkdir- Crear directorios:mkdir [directorio]: Crea un nuevo directorio con el nombre especificado.mkdir -p [ruta/del/directorio]: Crea un directorio y cualquier directorio padre necesario.- Ejemplo:
mkdir proyectos
mkdir -p proyectos/devops/scripts
-
rmdir- Eliminar directorios vacíos:rmdir [directorio]: Elimina un directorio si está vacío.- Ejemplo:
rmdir proyectos/antiguos
Gestión de Archivos y Directorios
-
cp- Copiar archivos y directorios:cp [origen] [destino]: Copia un archivo de origen a destino.cp -r [directorio_origen] [directorio_destino]: Copia un directorio y su contenido recursivamente.- Ejemplo:
cp archivo.txt /home/rafa/backup/
cp -r /home/rafa/proyectos /home/rafa/backup/
-
mv- Mover o renombrar archivos y directorios:mv [origen] [destino]: Mueve o renombra un archivo o directorio.- Ejemplo:
mv archivo.txt archivo_viejo.txt
mv /home/rafa/proyectos /home/rafa/archivos/
-
rm- Eliminar archivos y directorios:rm [archivo]: Elimina un archivo.rm -r [directorio]: Elimina un directorio y su contenido de forma recursiva.rm -f [archivo]: Fuerza la eliminación de un archivo sin preguntar confirmación.- Ejemplo:
rm archivo_viejo.txt
rm -r /home/rafa/archivos
rm -f archivo.txt
-
touch- Crear archivos vacíos o actualizar la marca de tiempo:touch [archivo]: Crea un archivo vacío si no existe, o actualiza la marca de tiempo si ya existe.- Ejemplo:
touch nuevo_archivo.txt
Visualización y Edición de Archivos
-
cat- Concatenar y mostrar el contenido de archivos:cat [archivo]: Muestra el contenido del archivo en la terminal.- Ejemplo:
cat archivo.txt
-
less- Ver archivos de texto una pantalla a la vez:less [archivo]: Muestra el contenido del archivo con la capacidad de navegar hacia adelante y hacia atrás.- Ejemplo:
less archivo.txt
-
more- Ver archivos de texto (más simple queless):more [archivo]: Muestra el contenido del archivo una pantalla a la vez.- Ejemplo:
more archivo.txt
-
head- Mostrar las primeras líneas de un archivo:head [archivo]: Muestra las primeras 10 líneas del archivo.head -n [número] [archivo]: Muestra las primerasnlíneas del archivo.- Ejemplo:
head archivo.txt
head -n 20 archivo.txt
-
tail- Mostrar las últimas líneas de un archivo:tail [archivo]: Muestra las últimas 10 líneas del archivo.tail -n [número] [archivo]: Muestra las últimasnlíneas del archivo.tail -f [archivo]: Muestra las últimas líneas del archivo y sigue mostrando nuevas líneas a medida que se agregan (útil para logs).- Ejemplo:
tail archivo.txt
tail -n 20 archivo.txt
tail -f /var/log/syslog
-
nano- Editor de texto en línea de comandos:nano [archivo]: Abre el archivo en el editor de textonano.- Ejemplo:
nano archivo.txt
-
vim- Editor de texto avanzado:vim [archivo]: Abre el archivo en el editor de textovim.- Ejemplo:
vim archivo.txt
Ejercicios para Comandos Básicos de Unix/Linux
Ejercicio 1: Navegación por el Sistema de Archivos
1.1 Lista el contenido del directorio actual.
1.2 Lista todos los archivos, incluyendo los ocultos, en tu directorio home.
1.3 Cambia al directorio /var/log y luego vuelve a tu directorio home.
1.4 mprime la ruta completa del directorio actual.
1.5 Crea un directorio llamado prueba en tu directorio home y luego crea un subdirectorio subprueba dentro de prueba.
1.6 Elimina el directorio subprueba.
Ejercicio 2: Gestión de Archivos y Directorios
2.1 Crea un archivo vacío llamado archivo1.txt en el directorio actual.
2.2 Copia archivo1.txt a un nuevo archivo llamado archivo2.txt.
2.3 Mueve archivo2.txt al directorio prueba.
2.4 Renombra archivo1.txt a archivo_renombrado.txt.
2.5 Elimina el archivo archivo_renombrado.txt.
2.6 Copia recursivamente el directorio prueba a un nuevo directorio llamado backup_prueba.
2.7 Elimina el directorio backup_prueba y todo su contenido.
Ejercicio 3: Visualización y Edición de Archivos
3.1 Muestra el contenido del archivo archivo1.txt (asegúrate de estar en el directorio donde se encuentra archivo1.txt).
3.2 Abre archivo1.txt con less y navega a través del archivo.
3.3 Usa head para mostrar las primeras 5 líneas de archivo1.txt.
3.4 Usa tail para mostrar las últimas 5 líneas de archivo1.txt.
3.5 Abre archivo1.txt con el editor de texto nano, escribe algo y guarda el archivo.
3.6 Abre archivo1.txt con el editor de texto vim, escribe algo y guarda el archivo.
Ejercicio 4: Desafío Final
4.1 Crea una estructura de directorios compleja y organiza archivos:
- En tu directorio home, crea la siguiente estructura de directorios:
proyectos/
├── devops/
│ └── scripts/
└── web/
├── html/
└── css/
4.2 Crea un archivo en cada uno de los directorios y escribe "Hola, DevOps" en cada archivo.
4.3 Copia todos los archivos a un nuevo directorio backup_proyectos.
4.4 Verifica que los archivos fueron copiados correctamente mostrando su contenido.
Ejercicios con soluciones para Comandos Básicos de Unix/Linux
Ejercicio 1: Navegación por el Sistema de Archivos
1.1 Lista el contenido del directorio actual.
- Solución:
ls
1.2 Lista todos los archivos, incluyendo los ocultos, en tu directorio home.
- Solución:
ls -a ~
1.3 Cambia al directorio /var/log y luego vuelve a tu directorio home.
- Solución:
cd /var/log
cd ~
1.4 Imprime la ruta completa del directorio actual.
- Solución:
pwd
1.5 Crea un directorio llamado prueba en tu directorio home y luego crea un subdirectorio subprueba dentro de prueba.
- Solución:
mkdir ~/prueba
mkdir ~/prueba/subprueba
1.6 Elimina el directorio subprueba.
- Solución:
rmdir ~/prueba/subprueba
Ejercicio 2: Gestión de Archivos y Directorios
2.1 Crea un archivo vacío llamado archivo1.txt en el directorio actual.
- Solución:
touch archivo1.txt
2.2 Copia archivo1.txt a un nuevo archivo llamado archivo2.txt.
- Solución:
cp archivo1.txt archivo2.txt
2.3 Mueve archivo2.txt al directorio prueba.
- Solución:
mv archivo2.txt ~/prueba/
2.4 Renombra archivo1.txt a archivo_renombrado.txt.
- Solución:
mv archivo1.txt archivo_renombrado.txt
2.5 Elimina el archivo archivo_renombrado.txt.
- Solución:
rm archivo_renombrado.txt
2.6 Copia recursivamente el directorio prueba a un nuevo directorio llamado backup_prueba.
- Solución:
cp -r ~/prueba ~/backup_prueba
2.7 Elimina el directorio backup_prueba y todo su contenido.
- Solución:
rm -r ~/backup_prueba
Ejercicio 3: Visualización y Edición de Archivos
3.1 Muestra el contenido del archivo archivo1.txt (asegúrate de estar en el directorio donde se encuentra archivo1.txt).
- Solución:
cat archivo1.txt
3.2 Abre archivo1.txt con less y navega a través del archivo.
- Solución:
less archivo1.txt
3.3 Usa head para mostrar las primeras 5 líneas de archivo1.txt.
- Solución:
head -n 5 archivo1.txt
3.4 Usa tail para mostrar las últimas 5 líneas de archivo1.txt.
- Solución:
tail -n 5 archivo1.txt
3.5 Abre archivo1.txt con el editor de texto nano, escribe algo y guarda el archivo.
- Solución:
nano archivo1.txt
3.6 Abre archivo1.txt con el editor de texto vim, escribe algo y guarda el archivo.
- Solución:
vim archivo1.txt
Ejercicio 4: Desafío Final
4.1 Crea una estructura de directorios compleja y organiza archivos:
proyectos/
├── devops/
│ └── scripts/
└── web/
├── html/
└── css/
- Solución:
mkdir -p ~/proyectos/devops/scripts ~/proyectos/web/html ~/proyectos/web/css
4.2 Crea un archivo en cada uno de los directorios y escribe "Hola, DevOps" en cada archivo.
- Solución:
echo "Hola, DevOps" > ~/proyectos/devops/scripts/mensaje.txt
echo "Hola, DevOps" > ~/proyectos/web/html/mensaje.txt
echo "Hola, DevOps" > ~/proyectos/web/css/mensaje.txt
4.3 Copia todos los archivos a un nuevo directorio backup_proyectos.
- Solución:
cp -r ~/proyectos ~/backup_proyectos
4.4 Verifica que los archivos fueron copiados correctamente mostrando su contenido.
- Solución:
cat ~/backup_proyectos/devops/scripts/mensaje.txt
cat ~/backup_proyectos/web/html/mensaje.txt
cat ~/backup_proyectos/web/css/mensaje.txt