실행되면 logrotate
다음과 같이 표시됩니다.
error: error creating output file /var/log/remote/172.29.202.29/contrail-vrouter-agent.log.1: File exists
error: error creating output file /var/log/remote/172.29.207.139/swift-object-server.log.1: File exists
...
이러한 기존 파일은 약 1,000개입니다 log.1
. ***log.2
성공적으로 재실행할 수 있도록 이름을 모두 바꾸고 싶습니다 logrotate
.
어떻게 해야 하나요?
답변1
일회성 수정을 찾고 있다면 다음과 같이 하면 됩니다.
find /var/log/remote/ -maxdepth 2 -type f -name *.log.1 | sed -e 's/log\.1/log\./g' | xargs -i mv {}1 {}2
하지만 이름이 변경된다는 점에 유의하세요.모두 *.log.1
파일은 다음 위치에 있습니다./var/log/remote/*/
따라서 일부 디렉토리를 건너뛰려면 find 다음에 옵션을 /var/log/remote/
사용해야 합니다 (참조-not -path <path>
이 답변은 예를 들어 다른 스레드에 있습니다.)