copy_skraper_media.sh: No mueve los ficheros a menos que esten en subcarpetas

This commit is contained in:
2023-04-04 19:07:14 +02:00
parent 5da1c4a5f3
commit 4a960d6487
+25 -20
View File
@@ -19,7 +19,7 @@ fi
# Si no existe, crea el directorio de destino
if [ ! -d "$2" ]; then
mkdir -p "$2"
mkdir -p "$2"
fi
# Colores
@@ -37,23 +37,28 @@ mkdir -p "${DESTINO}"
# Procesa todas las carpetas
for ITEM in "${ORIGEN}"/*; do
# Obten el nombre del sistema y lo imprime en pantalla
SISTEMA=$(basename "${ITEM}")
printf "\n\n%s\n" "${BOLD}${WHITE}${BLUE_BG} ${SISTEMA} ${NORMAL}"
# Procesa la lista de carpetas
for CARPETA in $MEDIA; do
printf "\n%s\n" "${BOLD}${LIME_YELLOW}${CARPETA}${NORMAL}"
# Crea el directorio de destino donde copiarlo todo
mkdir -p "${DESTINO}/${SISTEMA}/${CARPETA}"
# Copia las imagenes
rsync -avh --delete --chmod=755 "${ITEM}"/"${CARPETA}/" "${DESTINO}/${SISTEMA}/${CARPETA}/"
# Copia el gamelist.xml
rsync -avh --delete --chmod=755 "${ITEM}"/gamelist.xml "${DESTINO}/${SISTEMA}/"
# Busca todos los ficheros en la carpeta y subcarpeta y los mueve a la raíz
find "${DESTINO}/${SISTEMA}/${CARPETA}" -type f -exec mv {} "${DESTINO}/${SISTEMA}/${CARPETA}" \; >/dev/null 2>&1
# Borra las subcarpetas
find "${DESTINO}/${SISTEMA}/${CARPETA}" -mindepth 1 -type d -exec rm -rdf {} \;
# Cambia el propietario de los archivos
chown sergio:sergio "${DESTINO}/${SISTEMA}/${CARPETA}/"*
done
# Obten el nombre del sistema y lo imprime en pantalla
SISTEMA=$(basename "${ITEM}")
printf "\n\n%s\n" "${BOLD}${WHITE}${BLUE_BG} ${SISTEMA} ${NORMAL}"
# Procesa la lista de carpetas
for CARPETA in $MEDIA; do
printf "\n%s\n" "${BOLD}${LIME_YELLOW}${CARPETA}${NORMAL}"
# Crea el directorio de destino donde copiarlo todo
mkdir -p "${DESTINO}/${SISTEMA}/${CARPETA}"
# Copia las imagenes
rsync -avh --delete --chmod=755 "${ITEM}"/"${CARPETA}/" "${DESTINO}/${SISTEMA}/${CARPETA}/"
# Copia el gamelist.xml
rsync -avh --delete --chmod=755 "${ITEM}"/gamelist.xml "${DESTINO}/${SISTEMA}/"
# Calcula el numero de subcarpetas
NUM_SUBCARPETAS=$(find "${DESTINO}/${SISTEMA}/${CARPETA}" -mindepth 1 -type d | wc -l)
# Si existen subcarpetas
if [ "$NUM_SUBCARPETAS" != 0 ]; then
# Busca todos los ficheros en la carpeta y subcarpeta y los mueve a la raíz
find "${DESTINO}/${SISTEMA}/${CARPETA}" -type f -exec mv {} "${DESTINO}/${SISTEMA}/${CARPETA}" \;
# Borra las subcarpetas
find "${DESTINO}/${SISTEMA}/${CARPETA}" -mindepth 1 -type d -exec rm -rdf {} \;
fi
# Cambia el propietario de los archivos
chown sergio:sergio "${DESTINO}/${SISTEMA}/${CARPETA}/"*
done
done