의사 JCL 구문
z/OS®의 빌드 스크립트에 의사 JCL이 포함됩니다.
z/OS 빌드 서버에서 사용하는 의사 JCL은 일부 확장과 제한사항이 있지만 외형상 표준 JCL과 비슷합니다. 이 주제에서 스크립트의 행(의사 JCL의 행)을 카드라고 합니다.
다음은 z/OS 빌드 스크립트에서 사용되는 의사 JCL과 z/OS 작업을 제출하는 데 사용되는 JCL의 주요 차이점입니다.
- 의사 JCL에는 작업 카드가 없습니다.
- 내부 스트림 데이터를 제외하고 모든 카드는 두 개의 슬래시(//)로 시작해야 합니다.
- 빌드 클라이언트에서 전송된 입력 파일 또는 빌드 클라이언트에 출력 파일로 리턴되는 파일에 데이터 세트를 맵핑할 수 있습니다. (CCUEXT 키워드는 이 맵핑을 지원하는 DD 문의 확장입니다.)
- DD 카드에서 ENQ 확장을 사용하여 DD 카드에서 할당한 데이터 세트의 이름에서 큐에 넣을 수 있습니다.
- 빌드 스크립트에서 사용되는 대체 변수의 기본값을 제공할 수 있습니다. (VARS 문이 이를 지원합니다.) 따라서 일반 스크립트를 작성한 후 대체 변수를 설정하여 특정 빌드에 맞게 이를 수정할 수 있습니다.
- 작업 실행에 대한 조건 지정 시 유연성이 추가될 수 있습니다. 예를 들어, 실행할 단계에 대한 여러 조건을 지정하는 방법은 실제 JCL의 경우와 다릅니다.
- 빌드 스크립트에 하나 이상의 작업 단계가 있습니다. 작업 단계의 실행은 이전 단계의 결과에 따라 다를 수 있으며 표준 JCL에서와 같이 COND 매개변수를 사용하지만 한 가지 차이점이 있습니다. 의사 JCL에서 두 개 이상의 작업 단계에 대해 조건을 지정하려면 각 조건의 COND= 키워드를 지정하십시오.
다음과 같은 유형의 카드가 지원됩니다.
- CALL
- 새 작업 단계를 정의하며 실행할 외부 JCL 작업을 지정하십시오.
- EXEC
- 새 작업 단계 및 실행할 프로그램의 이름을 정의합니다.
- DD
- 입력 및 출력 파일에 대한 정의를 지정합니다.
- IF, ELSE, ENDIF
- 포함되는 명령문을 제어합니다.
- IF
- 조건을 지정하며 조건문의 시작입니다.
- ELSE
- 조건이 true가 아닌 경우 수행되는 작업을 지정합니다.
- ENDIF
- 조건문의 종료를 표시합니다.
- VARS
- 대체 값의 기본값을 지정합니다.