cron 작업에서 스크립트를 호출할 때 타임스탬프 추적을 두 개의 다른 파일에 저장하고 싶습니다. stdout용 파일 하나 script.log
와 stderr용 파일 하나script.err
이 cron 라인을 사용하면 파일의 타임스탬프를 얻을 수 있지만 script.log
사용할 수는 없습니다.script.err
*/1 * * * * ((/home/user/script.sh) | ts "\%H:\%M:\%.S ->") 2>>/home/user/script.err >> /home/user/script.log
타임스탬프도 어떻게 추가할 수 있나요 script.err
?
답변1
한 가지 방법은 먼저 ts의 stdout을 리디렉션한 다음 파이프의 stderr을 stdout으로 리디렉션한 다음 파이프를 다른 파이프로 리디렉션하는 것입니다 ts
.
*/1 * * * * (/home/user/script.sh | ts "\%H:\%M:\%.S ->" >> /home/user/script.log) 2>&1 | ts "\%H:\%M:\%.S ->" >> /home/user/script.err
(그럼에도 불구하고 첫 번째의 stderr 출력은 ts
두 번째로 기록됩니다 ts
.)