![systemd 서비스 파일: StandardOutput= 및 StandardError=에 정의된 로그 파일 이름에 동적 타임스탬프를 포함합니다.](https://linux55.com/image/207961/systemd%20%EC%84%9C%EB%B9%84%EC%8A%A4%20%ED%8C%8C%EC%9D%BC%3A%20StandardOutput%3D%20%EB%B0%8F%20StandardError%3D%EC%97%90%20%EC%A0%95%EC%9D%98%EB%90%9C%20%EB%A1%9C%EA%B7%B8%20%ED%8C%8C%EC%9D%BC%20%EC%9D%B4%EB%A6%84%EC%97%90%20%EB%8F%99%EC%A0%81%20%ED%83%80%EC%9E%84%EC%8A%A4%ED%83%AC%ED%94%84%EB%A5%BC%20%ED%8F%AC%ED%95%A8%ED%95%A9%EB%8B%88%EB%8B%A4..png)
systemd 서비스 단위 파일을 만들었고 systemd 버전 240+부터 다음과 같이 STDOUT + STDERR 출력이 파일로 직접 이동하도록 설정할 수 있습니다.
StandardOutput=append:/tmp/my-service.log
StandardError=append:/tmp/my-service.log
서비스가 시작된 시점의 현재 타임스탬프를 이러한 파일 이름에 추가할 수 있는 방법이 있습니까?
예를 들어 /tmp/my-service.log
서비스가 시작될 때마다 다음과 같이 표시됩니다./tmp/my-service.2022-07-07_114035.log
쉘 스크립트와 같은 것이라면 다음을 수행할 수 있습니다.
StandardOutput=append:/tmp/my-service.$(date +%Y-%m-%d_%H%M%S).log
StandardError=append:/tmp/my-service.$(date +%Y-%m-%d_%H%M%S).log
...하지만 시스템 구성 파일에서는 작동하지 않습니다.