설명서에는 systemd.path
"조건"을 결합할 수 있다고 나와 있지만 방법은 나와 있지 않습니다.
이것은 논리적 AND인 것 같습니다. 논리적 OR을 수행하려면 path
동일한 대상에 대해 여러 트리거를 사용해야 합니다. 내가 맞나요?
편집: 예를 들어 나는길타이머에 의해 일정 시간이 지나면 트리거됩니다.서비스그 빈 a대기줄폴더.
만약에대기줄비어 있지 않을 때길트리거됨, 내가 원함서비스시작
DirectoryNotEmpty
하세요.파일이 추가된 경우대기줄실행 중에도 파일 추가/제거를 모니터링하기를 원
PathModified
하지만 실행 내에서만 실행하고 파일이 실행 외부에 추가되면 서비스를 트리거하지 않습니다.
그래서 결국은 실행하고 싶어요대기줄시작 시 디렉터리가 비어 있지 않거나대기줄런타임 중에 수정되었습니다.
어떻게 해야 하나요?
답변1
각 개별 조건 전에 수직 파이프를 사용하십시오.
~에서무료 데스크탑 매뉴얼 페이지:
여러 조건이 지정된 경우 모든 조건이 적용되면(즉, 논리 AND가 적용됨) 단위가 실행됩니다. 조건부 검사 앞에는 파이프 기호(|)가 붙을 수 있으며, 이 경우 해당 조건은 트리거 조건이 됩니다. 장치에 대해 하나 이상의 트리거 조건이 정의된 경우, 하나 이상의 트리거 조건이 적용되고 모든 비트리거 조건이 충족되면 장치가 실행됩니다.