7시에 일어나서 어떤 작업을 수행하고 일반적으로 15분 동안 지속되지만 때로는 며칠 동안 지속되고(예: 실험 감독) 작업이 완료되면 자동으로 종료되는 기계가 있다고 가정해 보겠습니다.
10시간마다 특정 분석 도구를 실행하고 싶습니다. 머신이 하루에 15분밖에 걸리지 않는다면 40일마다 한 번씩 실행될 수 있지만, 머신이 수행할 작업이 많으면 하루에 두 번 실행해야 할 수도 있습니다.
어떻게 이를 달성할 수 있나요?
내가 즉시 생각한 것은 bash 루프를 통해 "가동 시간"을 로그 파일에 덤프하고 매분 읽어 프로파일링 도구가 마지막으로 실행된 이후의 가동 시간을 요약하는 것이었습니다. 필요한 시간이 오면 종료를 비활성화하고(어떻게 해야 합니까?) 분석한 다음 수동으로 종료합니다.
이는 작동하지만 (1) I/O 집약적이며 (2) 해킹적이며 (3) 분석 자체에 10시간 이상이 걸리면 실패합니다(이런 일이 발생할 수 있음).
더 좋은 방법이 있나요?