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-l
y-a
para 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 primerasn
lí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 últimasn
lí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