내 우분투 시스템에서 2시간마다 작은 모니터링 jar 파일을 실행하고 싶습니다.
java -jar mymonitoringtool.jar
어떻게 설정하는지 모르겠습니다.
답변1
요구 사항에 따라 다음 표현식을 사용하여 crontab을 설정할 수 있습니다.
0 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar &> path/to/monitor-$(date "+%Y%b%d-%H%M%S").log
먼저 를 실행하여 기존 크론 작업이 있는지 확인해야 합니다 crontab -l
.
아직 cron 작업이 없으면 위 줄을 텍스트 파일(예: my-cron-job.txt)에 넣고 실행하여 crontab my-cron-job.txt
활성화할 수 있습니다. 그런 다음 crontab -l
작업을 다시 실행하여 작업이 추가되었는지 확인할 수 있습니다 .
기존 cron 작업이 있는 경우 crontab -e
crontab 파일을 실행하고 편집해야 합니다. 이를 위해서는 명령줄 편집기(기본적으로 vi)를 사용해야 합니다.
cron 데몬은 제한된 수의 환경 변수만 설정하므로 Java 실행 파일의 전체 경로를 지정하는 것이 가장 좋습니다. 또한 실행 가능한 JAR 파일의 전체 경로를 지정해야 합니다.
저는 여러분이 java -jar
명령의 출력을 수집하고 싶다고 가정하고 명령에 로그 파일을 추가했습니다. 명령의 출력 및 오류 스트림은 타임스탬프와 함께 이름이 지정되는 이 로그 파일로 리디렉션됩니다(예: monitor-2018Nov03-200000.log).
모든 것이 설정되면 크론 작업의 처음 한두 번 실행을 모니터링해야 합니다. 모든 것이 괜찮다면 계속 실행해도 됩니다.
외부 참조를 위해 다음은 크론 작업에 대한 소개입니다. 이는 예약이 실제로 어떻게 작동하는지 이해하는 데 도움이 됩니다.
https://www.howtoforge.com/a-short-introduction-to-cron-jobs
답변2
cron은 Linux의 내부 작업 스케줄러입니다. 특정 시간 간격이나 날짜 시간에 실행되도록 명령을 예약하는 데 도움이 됩니다.
crontab -e
터미널에 입력하세요이 줄을 추가하세요
0 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar
저장 및 종료
crontab 구문은 다음과 같습니다
00 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar
매일 매월 2시간마다 0분 매주 평일 run-this-command
더 많은 옵션과 정보를 보려면:https://help.ubuntu.com/community/CronHowto