Я хочу переместить файл TLR
, а также все *.log
и *.ini
в папку с определенной датой, которая называется /app/hard/ec4rd/ec4rd_backup/mmddyyyy_[Run_Number]
.
Значение [Run_Number]
должно определяться на основе счетчика.
Если это первый запуск, то он должен быть 1.
Например: если /u01/app/ec4rd/ec4rd_backup/06202019_1
уже существует, то следует создать новый каталог /app/hard/ecm2fs/KADE_TLE_Backup/06202019_2
и переместить туда файлы и т. Д.
Может кто-нибудь помочь мне, как это сделать с помощью сценария оболочки Unix?
Ниже мой код, который я сделал
#!/usr/bin/ksh
date=`date +"%m%d%Y"`;
cd /app/hard/ec4rd/ec4rd_backup/;
if [ ! -d "$date"_1 ];
then
mkdir "$date"_1;
find /app/hard/ec4rd/ec4rd_backup/*.ini -type f -mtime -1 | xargs -n1 -i mv {} /app/hard/ec4rd/ec4rd_backup/"$date"_1/;
find /app/hard/ec4rd/ec4rd_backup/*.log -type f -mtime -1 | xargs -n1 -i mv {} /app/hard/ec4rd/ec4rd_backup/"$date"_1/;
find /app/hard/ec4rd/TLR -type f -mtime -1 | xargs -n1 -i mv {} /app/hard/ec4rd/ec4rd_backup/"$date"_1/;
elif [ -d "$date"_1 ];
then
mkdir "$date"_2;
find /app/hard/ec4rd/ec4rd_backup/*.ini -type f -mtime -1 | xargs -n1 -i mv {} /app/hard/ec4rd/ec4rd_backup//"$date"_2/;
find /app/hard/ec4rd/ec4rd_backup/*.log -type f -mtime -1 | xargs -n1 -i mv {} /app/hard/ec4rd/ec4rd_backup//"$date"_2/;
find /app/hard/ec4rd/TLR -type f -mtime -1 | xargs -n1 -i mv {} /app/hard/ec4rd/ec4rd_backup/"$date"_2/;
fi