Сортировка каталогов в каталогах по времени
Форум — Admin
Помогите решить задачу! Нужно отсортировать каталоги в каталогах а именно есть исходный вид
- /home/admin/logs/server-1/logdir1(Aug 3)/logs.txt
- /home/admin/logs/server-1/logdir2(Aug 5)/logs.txt
- /home/admin/logs/server-1/logdir3(Aug 1)/logs.txt
- /home/admin/logs/server-3/logdir6(Aug 5)/logs.txt
- /home/admin/logs/server-5/logdir4(Aug 1)/logs.txt
#logdir - UUID (0a1f901d-f1f7-4049-bbe9-642132fbf163) рандомное имя и создан в разное время
Нужно сделать скопировать в папку backups оставить имя сервера в качестве имени каталога и в каталоге сервера создать папку с датой создания директории с логами
- /home/admin/logs/backups/server-1/03.08.2021/logdir1(Aug 3)/logs.txt
- /home/admin/logs/backups/server-1/05.08.2021/logdir2(Aug 5)/logs.txt
- /home/admin/logs/backups/server-1/01.08.2021/logdir3(Aug 1)/logs.txt
- /home/admin/logs/backups/server-3/05.08.2021/logdir6(Aug 5)/logs.txt
- /home/admin/logs/backups/server-5/01.08.2021/logdir4(Aug 1)/logs.txt
Использовал это скрипт, он сортирует всё по датам в каталоги но без имени сервера (со всех серверов по дате в кучу)
#/bin/bash
SRC_DIR="/home/admin/logs/*/"
DST_DIR="/home/admin/logs"
for F in ${SRC_DIR}/*; do
SUB=$(date -d"$(stat -c%y "${F}")" +%d-%m-%Y)
mkdir -p "${DST_DIR}/${SUB}"
cp -r "${F}" "${DST_DIR}/${SUB}/"
done