NOTA: Recuerda darle permisos de ejecución antes de ejecutarlo: chmod +x nombreScript.sh
Script de Copia de seguridad
#!/bin/bash echo "Se va a realizar una copia de seguridad de la carpeta /Documentos/Debian_Docs al dispositivo externo, 64GB y disco 500GB. Se creará un archivo de registro en ambos" cp -r -u -v /home/guillermo/Documentos/Debian_Docs /media/usb64 2>&1 | tee -a /media/usb64/logfile.log cp -r -u -v /home/guillermo/Documentos/Debian_Docs /media/500gb2 2>&1 | tee -a /media/500gb2/logfile.log echo "Copia realizada. Puedes cerrar esta terminal."
-
Paso 1: Entender el comando cp
cp: Este es el comando utilizado para copiar archivos y directorios en Linux.
-
Paso 2: Opciones del comando
-r: Esta opción significa "recursivo". Se utiliza para copiar directorios y su contenido, incluyendo subdirectorios y archivos dentro de ellos.
-u: Esta opción significa "actualizar". Solo copia los archivos que son más nuevos que los que ya existen en el destino o que no están presentes en el destino. Esto ayuda a evitar copias innecesarias.
-v: Esta opción significa "verbose" (detallado). Muestra en la terminal los archivos que se están copiando, lo que permite ver el progreso de la copia.
-
Paso 3: Especificar las rutas
/home/guillermo/Documentos/Debian_Docs: Esta es la ruta de origen, donde se encuentran los archivos y directorios que deseas copiar.
/media/usb64: Esta es la ruta de destino, donde se copiarán los archivos. En este caso, es un dispositivo USB montado.
-
Paso 4: Redirección de salida
2>&1: Esto redirige los mensajes de error (stderr) al mismo lugar que la salida estándar (stdout). Así, tanto los mensajes de error como los de progreso se enviarán al mismo flujo.
-
Paso 5: Uso de tee
| tee -a /media/usb64/logfile.log: El símbolo | se utiliza para canalizar la salida del comando anterior al siguiente comando. tee: Este comando toma la entrada y la escribe tanto en la salida estándar (pantalla) como en un archivo. -a: Esta opción significa "anexar". Si el archivo logfile.log ya existe, los nuevos datos se agregarán al final del archivo en lugar de sobrescribirlo.
Resumen del Proceso
- Copia los archivos y directorios de /ORIGEN a /DESTINO.
- Muestra en la terminal qué archivos se están copiando.
- Registra tanto la salida normal como los errores en el archivo logfile.log en el DESTINO (en mi caso, un dispositivo USB).




