작업은 부하가 낮은 경우에만 한 번만 트리거됩니다.

작업은 부하가 낮은 경우에만 한 번만 트리거됩니다.

내 gtag를 자동으로 업데이트하고 싶지만 시스템이 유휴 상태일 때만 가능합니다.

iupdate이를 달성하기 위해 소스 폴더의 흥미로운 부분을 감시하는 데 사용하고 있습니다 . 하지만 "유휴" 부분에 문제가 있습니다. batch로드가 1.5(또는 구성된 값) 아래로 떨어지면 명령이 작업을 실행할 수 있다는 것을 알고 있습니다. 그러나 작업이 실행되기 전에 여러 번 iupdate실행되어 여러 gtags 업데이트가 발생할 수 있습니다 .batch

물론 잠금 파일을 생성하고 batch이전에 호출되지 않은 경우에만 시작할 수 있습니다.

그러나 좀 더 표준적인 방법이 있습니까? 나는 다음과 같은 것을 기대하고 있습니다 batch_only_once...

답변1

이것은 당신을 위해 그것을 할 것입니다:

$ cat /etc/lsb-release | grep -i desc
DISTRIB_DESCRIPTION="Ubuntu 14.04 LTS"
$ apt-cache show run-one
....
Description-en: run just one instance of a command and its args at a time
 This utility will run just one instance at a time of some command and
 unique set of arguments (useful for cronjobs, eg).

답변2

atq를 사용하여 먼저 다른 일괄 작업을 구문 분석하고 정리하는 래퍼 스크립트를 작성할 수 있습니다 atrm.

관련 정보