talleres-bash/taller1/scripts/examples/backup.sh

30 lines
694 B
Bash
Executable File

#!/bin/bash
set -euo pipefail
# -- CONSTANTES -- #
SRC_DIR="$HOME/Descargas" # Carpeta que va a ser copiada
DST_DIR="./Backups" # Destino
COMPRESS=true # Comprimir?
# -- MAIN -- #
echo "Haciendo backup de $SRC_DIR"
echo # Línea en blanco
now=$(date '+%d-%m-%Y')
folder=$(basename $SRC_DIR) # Conseguir carpeta/archivo más lejano a la raíz (/home/pablo -> pablo)
name="$folder-$now"
# Crear carpeta de destino primero
mkdir -p $DST_DIR
if $COMPRESS; then
# Comprimir en .tar.gz
tar -czvf "$DST_DIR/$name.tar.gz" -C $SRC_DIR .
else
# Copiar sin comprimir
mkdir -p "$DST_DIR/$name" # Crear directorio y "parents"
cp -R $SRC_DIR/* $DST_DIR/$name
fi
echo "¡Terminado!"