개발자 도구 · Crontab 생성기
크론 표현식 소리내어 읽기: */5 9-17 * * 1-5가 단어가 되는 방법
· 작동 방식
크론 코드 검토 개발자 워크플로
표현을 영어로 번역하는 것은 일단 순서를 알고 나면 기계적인 과정입니다. 이 게시물에서는 읽기 알고리즘을 제공하고 이를 까다로운 예제에 적용하며 생성기의 설명이 확인에 어떻게 도움이 되는지 보여줍니다.
검토할 수 없는 diff의 crontab — 단계와 범위가 포함된 5개 필드, 이를 설명하는 주석 없음
풀 요청의 5개 토큰 표현식은 구두점으로 압축된 실행 가능한 정책입니다. 모양을 인식하지만 일정을 큰 소리로 말할 수 없는 리뷰어는 포괄적인 끝점, 잘못된 단계 또는 이틀 필드 간의 특별한 관계를 놓칠 가능성이 높습니다. 따라서 번역은 정확성을 확인하는 것이지 장식적인 문서가 아닙니다.
ToolAcre는 경고 및 미리 보기에 사용되는 구문 분석된 개체에서 문장을 파생합니다. 명령과 비밀은 외부에 남겨두고 5개 필드만 붙여넣습니다. 생성된 문구가 작성자의 의견과 다를 경우 표현식을 어디에나 설치하기 전에 검토를 일시 중지하고 의도를 해결합니다.
날짜 필드를 먼저 읽으십시오. 요일과 월은 무슨 요일을 알려주고 분과 시간은 언제를 알려줍니다.
달력 범위는 시계 세부사항보다 설정하기가 가장 쉽습니다. 월과 주중에는 해당 연도 또는 주 중 어느 부분이 적격한지 알 수 있습니다. 날짜는 다른 달력 조건을 추가할 수 있습니다. 시간과 분 다음에는 일치하는 날짜 내에 실행됩니다. 이 읽기 순서는 사람이 검토하기 위한 것이지만 표현식의 저장된 위치 순서는 분 단위로 유지됩니다.
두 날짜 필드가 모두 제한되어 있는지 항상 확인하세요. 그렇다면 ToolAcre는 "or"로 결합하고 경고를 표시합니다. 인접한 AND 필터로 일정을 변경하면 자연스럽게 읽을 수 있습니다. 하루 필드의 와일드카드는 이러한 모호성을 제거하고 다른 필드가 유일한 날짜 제한 역할을 할 수 있도록 합니다.
각 토큰 번역 — *는 'every', 숫자는 'at', 범위는 'from–to', 단계는 'every N start at'으로
별표는 해당 위치에 허용되는 모든 값을 의미합니다. 숫자는 하나의 값을 선택합니다. 하이픈에는 끝점 사이의 모든 값이 포함됩니다. 쉼표는 항목을 결합하고 슬래시는 와일드카드, 범위 또는 기본 시작의 시작부터 n번째 값마다 샘플링합니다. 필드 자체의 최소값에 따라 와일드카드 단계가 시작되는 위치가 결정됩니다.
이름은 `JAN-MAR` 및 `MON-FRI`과 같은 범위를 포함하여 대소문자에 관계 없이 월 및 평일에 허용됩니다. 일요일은 0 또는 7로 작성될 수 있으며 0로 정규화됩니다. 설명 코드는 연속된 확장 값을 "통과" 표현으로 변환하고, 연속되지 않은 값을 읽을 수 있는 목록으로 변환합니다.
작업 예: 도구는 선택한 시간을 설명하고 확장된 분 값은 최종 실행을 식별합니다.
`*/5 9-17 * * 1-5`는 5단계, 9부터 17까지, 주중 월요일부터 금요일까지 0부터 55까지의 분 값을 선택합니다. 이 도구는 선택한 시간 범위에 걸쳐 분 단위로 설명합니다. 값을 확장하면 포함된 17 시간의 최종 후보가 17:55임을 알 수 있습니다.
"9-17"이 영업일 경계로 해석되면 마지막 후보가 누락되는 경우가 많습니다. Cron은 전체 시간 값을 선택한 다음 선택한 모든 분과 결합합니다. 의도가 17:00로 끝나는 경우 "nine to five"라는 단어가 익숙하다는 이유만으로 표현이 올바른 것으로 검토할 수 없습니다.
작업 예: 0 0 1,15 * 3 — 날짜 필드를 읽거나 놓치지 않도록 소리내어 규칙을 정합니다.
이제 `0 0 1,15 * 3`을(를) 읽어보세요. 자정이 선택되고, 날짜는 1일 또는 15일, 평일은 수요일입니다. 두 날짜 필드가 모두 제한되어 있으므로 달력 조건은 매월 1일 또는 15일 또는 매주 수요일입니다. “날짜가 1 또는 15인 수요일”이 아닙니다.
ToolAcre의 경고는 해당 조합을 눈에 띄게 만들고 설명에는 "또는"이라는 단어가 삽입됩니다. 다음 실행 미리보기는 선택한 구역에 대한 구체적인 날짜를 제공합니다. 세 가지 결과를 모두 검토하세요. 왜냐하면 유창한 문장만으로는 기본 요구 사항이 방언이 직접 표현할 수 없는 교차점이라는 사실을 여전히 숨길 수 있기 때문입니다.
표현식과 비교하여 확인한 후에만 인텐트 주석을 저장합니다.
표현식 위의 주석은 의도를 보존할 수 있지만 필드가 변경된 후에도 오래된 거짓말을 보존할 수도 있습니다. 검토 중에 현재 토큰에서 문장을 생성하거나 수동으로 재구성합니다. 편집으로 인해 `0`이(가) `*/5`로 변경되면 확장된 분 설정과 최종 실행을 확인한 후에만 설명을 업데이트하세요.
벽시계 구역 가정과 빈도를 명시하는 주석을 선호합니다. 표현식에는 시간대 필드가 포함되어 있지 않지만 ToolAcre의 미리 보기에서는 검토자에게 시간대 필드를 선택하도록 요청합니다. 이 메모는 브라우저 선택에 따라 최종 스케줄러가 구성된다는 의미 없이 다른 사람이 동일한 목록을 재현하는 데 도움이 됩니다.
6필드 및 7필드 문법은 거부되며 번역되지 않습니다.
파서에는 정확히 5개의 필드가 필요합니다. 6개 필드 입력은 선행 초 스타일에 대한 구체적인 설명을 받습니다. 더 긴 형식은 해석되지 않습니다. ToolAcre에는 연도 필드도 없습니다. 따라서 이 기사의 일반 영어 알고리즘은 저장소의 5개 필드 문법에만 적용됩니다.
나머지 텍스트가 검증될 때까지 Quartz, Spring 또는 다른 제품에서 필드를 제거하지 마십시오. 지원되지 않는 연산자는 필수적인 의미를 가질 수 있습니다. 번역에는 두 시스템 모두에 대한 문서가 필요하지만 이 생성기는 자체적으로 허용되는 값, 이름, 범위, 목록, 단계, 와일드카드 및 별칭에 대한 증거만 제공합니다.
요점: 모든 표현식에는 문장이 있습니다. Crontab 생성기는 해당 문장을 생성하므로 의도와 비교할 수 있습니다.
지원되는 모든 표현식은 유한 필드 값과 달력 문장으로 확장될 수 있습니다. 해당 값을 읽으면 비공식적 문구가 생략된 에지 후보가 노출됩니다. 또한 일정이 운영 호스트에 도달하기 전에 날짜 필드 OR 규칙을 대화에 강제 적용합니다.
검토를 위해 표현식을 붙여넣고 생성된 설명을 명시된 요구 사항과 비교하고 경고를 검사하고 다가오는 시간을 샘플링합니다. 결과 주석을 줄 옆에 유지하되 구문 분석된 표현식을 실행 가능한 소스로 처리합니다. 생성기는 일정 의도를 설명합니다. 명령을 증명하거나 설치하지 않습니다.