at
이 플래그를 사용하여 스크립트를 실행하는 작업을 만들었습니다 -f
. 이 스크립트는 Tomcat을 다시 시작합니다. 작업은 Feb 21 18:00:00 2022
어제 수행될 예정이었습니다. 방금 그 당시 Tomcat이 다시 시작되었음을 확인했습니다. 그러나 오늘 실행하면 다음과 같은 결과 atq
가 나타납니다.
3 Mon Feb 21 18:00:00 2022 = alexander
atq
직업 만 나열되어 있는 것으로 알고 있습니다 pending
. 어제 내 직업이 목록에 표시되는 이유는 무엇인가요?
고쳐 쓰다:
방금 스크립트를 확인했는데 tail
궁극적으로 종료되지 않는 내용이 포함되어 있습니다. 이는 결코 그만둘 수 없는 직업으로 이어질 수 있습니다. 출력은 .에 있지만 /var/spool/at/spool/a0000301a27604
파일의 마지막 수정 시간은 입니다 2022-02-21 23:40:33.534191768
. 나는 이것이 꼬리의 마지막 출력이 도착하는 곳이라는 것을 방금 발견했습니다. 아직 실행 중인 작업의 프로세스 ID를 얻는 방법은 무엇입니까?
답변1
귀하의 질문에 대한 최신 버전은 "아직 실행 중인 작업의 프로세스 ID를 얻는 방법은 무엇입니까?"
pgrep atd
525
pstree -p 525
atd(525)───atd(6729)───sh(6738)───sleep(6739)
또는 두 명령을 안전하게 결합하세요.
pgrep atd | xargs -n1 -r pstree -p