실행하고, 실행을 완료하고, 30초 동안 기다렸다가 다시 실행하는 타이머를 만들고 싶지만 밤에만 가능합니다. 지금까지 나는 이것을 얻었습니다 :
[Timer]
OnUnitInactiveSec=30s
OnCalendar= * - * - * 23,24,00,01,02,03,04,05,06,07:*
하지만 이 두 조건이 "and" 또는 "or" 역할을 하는지는 알 수 없습니다. 즉, 하나의 조건을 만족하면 타이머가 작동하기에 충분한지, 아니면 둘 다 필요한지(즉, 내가 원하는 것)는 알 수 없습니다. ). 도움말 페이지에서 해당 세부정보를 찾을 수 없으며 인터넷에서 찾은 예에서는 이 조건 중 한 가지 유형만 사용합니다.
답변1
~에 따르면systemd.timer
:
여러 명령어는 동일한 유형과 다른 유형으로 구성될 수 있으며, 이 경우 타이머 장치는 지정된 타이머 표현식이 경과할 때마다 실행됩니다. 예를 들어 OnBootSec=과 OnUnitActiveSec=을 결합하면 주기적으로 실행되고 매번 특정 서비스를 활성화하는 타이머를 정의할 수 있습니다. 또한 단조로운 시간 표현과 OnCalendar=calendar 표현을 모두 동일한 타이머 단위로 결합할 수 있습니다.
"any" 사양은 "OR" 관계임을 나타냅니다.