그래서 나는 이 이상한 것을 보았습니다(또는 경험이 거의 없기 때문에 적어도 나에게는 이상했습니다).
cronnext
nextstring
분당 cronjob이 무엇인지 알려주세요 .시작~의현재의분,
즉,과거.
예를 들어 , cronnext
에서 실행 하면 다음과 같이 표시됩니다. ( ( 순진하게 예상했던 대로) 대신 : )02:11:27
nextstring: Tue Jul 25 02:11:00 2023
nextstring: Tue Jul 25 02:12:00 2023
이게 정상인가요, 아니면...?
어떤 매뉴얼 페이지에서도 이에 대한 내용을 찾을 수 없고,
제가 생각할 수 있는 용어로는 어떤 것도 검색할 수 없기 때문입니다...
나는 anacron
또한 태그를 추가했습니다
.하다설치했는데
직접 사용해본 적이 없어서
관련성이 있는지는 모르겠습니다.
(
$ sudo cronnext -c
#=>
- user: "username"
crontab: /var/spool/cron/tabs/username
system: 0
entries:
- user: username
cmd: "/home/username/my_script.sh"
flags: 0x0F
flagnames: MIN_STAR|HR_STAR|DOM_STAR|DOW_STAR
delay: 0
next: 1690276260
nextstring: Tue Jul 25 02:11:00 2023
next: 1690276260
)
(
이 문제가 발생했을 때 원래 수정하려고 했던 버그를 이미 찾아 수정했기
때문에 결국 이 특정 문제에 대한 의구심에 불과했지만
여전히 문제인 것 같아서 물어보고 싶었습니다.이상한큰 책.
)
답변1
데비안에는 해당 도구가 없어서 최신 버전을 다운로드했는데,크로니-1.6.1Github의 소스 저장소에서.
맨 페이지는 말한다설명하다,
cron
다음 작업을 언제 실행할지 결정합니다. 인수 없이 모든 크론탭을 고려한 시간을 에포크 이후 초 단위로 인쇄합니다.분 단위로 반올림.
(강조합니다.) 코드는 항상 반올림되는 것처럼 보이며, 이로 인해 찾은 것과 같은 잘못된 답변이 생성됩니다.
이것이 내가 만든 방법입니다.
./configure --prefix=
make
그리고 실행하세요:
src/cronnext
src/cronnext.c
해결책은 호출의 250번째 라인에서 루프 시작 조건을 대신 nextmatch()
사용하도록 변경 하는 것 같습니다 . 하지만 패치를 제출할 만큼 이에 대한 확신이 없기 때문에 이를 사용할 때보다는 344행에 정의된 곳에 60(초)을 추가하여 수정하는 것이 더 나을 것이라고 생각합니다.start+60
start
start
이 프로그램을 사용하고 있으므로 이에 대한 버그 보고서를 제출하는 것이 좋습니다.이슈 트래커.