![파일에 추가된 데이터의 값이 200MB를 초과하면 새 파일을 생성해야 합니다.](https://linux55.com/image/97757/%ED%8C%8C%EC%9D%BC%EC%97%90%20%EC%B6%94%EA%B0%80%EB%90%9C%20%EB%8D%B0%EC%9D%B4%ED%84%B0%EC%9D%98%20%EA%B0%92%EC%9D%B4%20200MB%EB%A5%BC%20%EC%B4%88%EA%B3%BC%ED%95%98%EB%A9%B4%20%EC%83%88%20%ED%8C%8C%EC%9D%BC%EC%9D%84%20%EC%83%9D%EC%84%B1%ED%95%B4%EC%95%BC%20%ED%95%A9%EB%8B%88%EB%8B%A4..png)
저는 ps -ef
5분마다 실행되고 출력을 파일에 추가하는 스크립트를 작성했습니다. 현재 파일 크기가 200MB를 초과하는 경우 새 파일을 생성하고 싶습니다. 누구든지 이 문제를 해결하도록 도와줄 수 있나요?
답변1
파일을 첨부하기 전에 스크립트에 이와 같은 내용을 추가할 수 있습니다.
FILE="your-file"
if test $(( $(stat -c"%s" "$FILE") )) -ge "$(( 200*1024*1024 ))"; then
mv "$FILE" "$FILE-$(date +"%FT%T")"
fi
답변2
프로그램 을 확인해 보세요 logrotate
. 먼저 다음 내용을 포함하는 구성 파일(예: )을 만듭니다 /home/john/logrotate/ps.conf
. (출력을 ps
에 덤프한다고 가정 /home/john/logrotate/log/ps.log
)
/home/john/logrotate/log/ps.log {
size = 200MB
missingok
notifempty
}
그런 다음 crontab을 만들어 실행할 수 있습니다 /usr/bin/logrotate /home/john/logrotate/ps.conf
. 바라보다남성압축과 같은 추가 옵션을 보려면