Привет Я держу свои файлы журналов в/opt/project/logs /, и я хочу, чтобы они ежедневно копировали их в/opt/bkp, сжимая их.Улучшение моего резервного сценария bash
Для этого я написал это и хорошо работает:
#!/bin/bash
getdate(){
date --date="$1 days ago" "+%Y_%m_%d"
}
rm -rf "/opt/bkp/logs/myapp_log_"$(getdate 365).gz ;
/bin/cat /opt/project/logs/myapp.log | gzip > /opt/bkp/logs/myapp_log_`date +%Y_%m_%d`.gz ;
echo "" > /opt/project/logs/myapp.log ;
Однако это не работает или вообще, у меня будет несколько приложений, сохранение файлов с их именами, т.е. app1.log app2.log
под одной и той же папке /opt/project/logs/
. Как я могу сделать это как «функцию», где скрипт читает каждый файл под каталогом /opt/project/logs/
, а резервное копирование каждого файла заканчивается расширением .log
?