30 lines
694 B
Bash
Executable File
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!"
|