티스토리 뷰

반응형

현재 폴더에서 실행하면, 현재 폴더의 소스파일등을 Backup폴더에 zip파일로 압축하고,

USB메모리가 있다면, Backup폴더를 USB메모리에도 복사한다.

xBackup.sh
0.00MB
Run.sh
0.00MB
build_and_Run.sh
0.00MB

#!/bin/bash
USB_dir=우분투/SPI
usb_mount_paths=$(df -h | grep '/media' | awk '{print $6}')
copy_files_to_directory() {
# 폴더명 출력
echo $1
for usb_mount_point in $usb_mount_paths; do
# 마운트 포인트의 끝 부분을 추출하여 USB 메모리의 식별자로 사용
usb_identifier=$(basename "$usb_mount_point")

dir1="$usb_mount_point/$USB_dir"
echo "USB:"$dir1
mkdir -p $dir1

#echo "$1 폴더를 $dir1 에 복사"
#cp -r $1 $dir1

echo 변경된 파일만 복사
     rsync -av --update $1 $dir1

#echo "파일을 $usb_identifier USB 메모리의 '우분투' 폴더로 복사했습니다."
done
}


# 백업 폴더 생성
backup_folder="Backup"
mkdir -p "$backup_folder"

mkdir -p "Lib"
cp -r ../Lib/* Lib/


# 현재 날짜와 시간을 이용하여 백업 파일명 생성
zip_file="$backup_folder/$(date '+%Y%m%d-%H%M').zip"

# *.zip을 제외한 모든 파일을 현재 폴더에서 백업 폴더로 이동
# shopt -s extglob
# mv !(Backup) "$backup_folder"

# 이전에 생성된 백업 파일 삭제
find "$backup_folder" -name "$zip_file" -type f -delete

# 현재 폴더를 백업 폴더로 압축 (zip 파일은 제외)
#zip -r "$zip_file" . -x "*.zip" "Backup/"
zip -r "$zip_file" . -x "*.zip" "Backup/"

rm -r Lib/

copy_files_to_directory $backup_folder
echo "Backup completed: $zip_file"
반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함