본문 바로가기
Dev Ops/AWS 업무관련

[Linux] Shell Script - 대량 파일 검색 후 AWS S3 복사

by ErrorMin 2022. 10. 14.

무수히 쌓여있는 log파일이나 data파일이 있다

 

회사 정책상 5개월이 지난 data파일은 읽기만 가능하고 쓰기가 불가능하도록 설정이 되어 있어 이를 방지하고자

test용으로 사용하기 위한 데이터를 server 혹은 s3에 복사 저장하여 Backup을 하기로 하였다.
하지만 저장된 log파일 및 data파일이 너무 많아 script를 작성하여 진행하려고 한다.

log 파일의 파일명은 다음과 같다.

web.log-2022-10-14........ web.log-2022-10-17...

script 로직 생각하기.

복사 = cp

반복 = for

s3 = aws cli 사용 

 


실습

 

예를 들어 이런식으로 log 파일이 구성되어 있다.

 

 

현재 디렉토리에 있는 파일들을 출력하는 Script

위에 적은 키워드중 반복을 사용하였다.

 

for 에서 in 오른쪽 * 은 현재 디렉터리의 파일 전체를 개수만큼 연산한다.

in 오른쪽에 /etc/data/.....등등 절대 경로를 이용할 수도 있다.

 

결과

web_s3_backup.sh 까지 검색하게 된다. 예외 처리를 하면 되지만

거기까지 설명하려면 너무 길어진다. 나중에 따로 예외 처리 포스팅을 올리겠다.

 

 

aws s3로 복사(cp) 명령어 사용하기

이런 식으로 사용 가능한 것이다.

Script는 필요한 기능을 짧고 간결하게 사용하는 것이 좋고 단순 복사 업무는 시간을 많이 들이지 않고도 간단한 스크립트를 빠르게 작성하여 사용 가능한 정도이다.

 

결과

 

다음 챕터는 date를 포스팅해보려고 한다.

 

'Dev Ops > AWS 업무관련' 카테고리의 다른 글

Linux Bash Shell 변수 할당  (0) 2022.10.05
AWS S3 버킷ID, KEY 대용량 데이터 전달  (0) 2022.07.26