#! /bin/bash
echo ===========================START============================
echo start time: `date`
USER="guest"
PW="pass" #보안확인 필요
IP="10.100.3.10"
echo "backup server IP: " $IP
conditionFile="/var/log/dataBackup_*.log"
ls $conditionFile
if [[ ! "$?" -eq 0 ]]; then
echo "conditionFile not exists"
echo end time: `date`
exit 0
fi
echo "wating for 5 sec..."
sleep 5
expect << EOL
set time -1
spawn rsync -ahvz --include=*.log* --exclude=* /var/log/ ${USER}@${IP}:/var/log/
# /var/log/ 하위에 .log 포맷만 대상으로 처리
expect "password:"
send "${PW}\n"
expect "]#"
set time -1
spawn rsync -ahvz --exclude=exclusive_dir /var/log/file_data/ ${USER}@${IP}:/var/log/file_data/
# /var/log/file_data/ 하위에 exclusive_dir이라는 디렉토리는 제외하고 대상 처리
expect "password:"
send "${PW}\n"
expect "]#"
EOL
backup_dirs=(
"/var/log/backup"
"/var/log/file_data_backup"
)
for elem in "${backup_dirs[@]}"
do
if [ ! -d #elem ]; then
mkdir $elem
echo mkdir $elem
fi
done
mv /var/log/*.log "${backup_dirs[0]}"
sleep 1
mv /var/log/file_data/* "${backup_dirs[1]}"
echo end_time: `date`
echo ===========================END============================
백업 서버로 로그파일을 백업하는 스크립트
'언어 > Sell Script' 카테고리의 다른 글
| 특정 형식의 파일들 중 특정 패턴들을 포함하고 있는 파일을 옮기는 스크립트 (0) | 2022.12.16 |
|---|---|
| Shell Script (0) | 2021.08.31 |
| Shell ? (0) | 2021.08.26 |