Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
Tags
- CKA 기출문제
- 기록으로 실력을 쌓자
- CKA
- minikube
- aws
- 공부
- Elasticsearch
- Linux
- PETERICA
- 티스토리챌린지
- mysql 튜닝
- 정보처리기사실기 기출문제
- kotlin
- 코틀린 코루틴의 정석
- MySQL
- kotlin coroutine
- 오블완
- kotlin querydsl
- Java
- kotlin spring
- Spring
- 정보처리기사 실기
- 정보처리기사 실기 기출문제
- APM
- AWS EKS
- Pinpoint
- CloudWatch
- Kubernetes
- IntelliJ
- AI
Archives
- Today
- Total
피터의 개발이야기
[shell] log 파일 압축하고 6개월지난 파일 지우기 본문
반응형
ㅁ 개요
ㅇ 기준 폴더의 개별 폴더들의 로그를 정리하는 쉘스크립트이다.
ㅇ 3일 지난 파일을 압축
ㅇ 180일 지난 압축파일 삭제
#!/bin/sh
# 기준 폴더
LOG_PATH=/logs
# 기준 폴더 안의 개별 폴더 목록
SVC_TYPE_ARRAY=("acs" "abccard")
# 로그정리 정리 로그(최근 로그만 남김)
LOG_FILE=${LOG_PATH}/log_clean.out
DAY=$(date +%Y-%m-%d --date '3 days ago')
date > $LOG_FILE
for svcType in "${SVC_TYPE_ARRAY[@]}"
do
# log zip
tar -czvf $LOG_PATH/$svcType/$svcType.$DAY.tar.gz $LOG_PATH/$svcType/*$DAY*.log >> $LOG_FILE
rm -f $LOG_PATH/$svcType/*$DAY*.log
echo $svcType' done' >> $LOG_FILE
# old file delete, 180일 지난 파일은 삭제한다.
for i in $(find $LOG_PATH/$svcType -name "*.tar.gz" -mtime +180)
do
FILE=`echo ${i}`
echo $FILE >> $LOG_FILE
rm -f ${FILE}
echo $svcType' rm done' >> $LOG_FILE
done
done
반응형
'Linux > Shell Script' 카테고리의 다른 글
[Shell] Shell - 파일 읽어 처리하기 (0) | 2022.09.17 |
---|---|
[shell] JSON 깔끔히 볼 수 있는 jq 명령어 (0) | 2022.09.16 |
[Shell] 배열 loop (0) | 2021.01.27 |
[shell] Spring BlueGreen 배포를 위한 Shell Script(with nginx) (0) | 2021.01.17 |
[shell] shell 변수 (0) | 2021.01.07 |
Comments