Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Job Control Language
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Basic syntax=== Both DOS and OS JCL have a maximum usable line length of 80 characters, because when DOS/360 and OS/360 were first used the main method of providing new input to a computer system was 80-column [[punched card]]s.<ref>Stern and Stern, ''Structured COBOL Programming'', pp. 528β529.</ref> It later became possible to submit jobs via disk or tape files with longer record lengths, but the operating system's job submission components ignored everything after character 80. Strictly speaking both operating system families use only 71 characters per line. Characters 73-80 are usually card sequence numbers which the system printed on the end-of-job report and are useful for identifying the locations of any errors reported by the operating system. Character 72 is usually left blank, but it can contain a nonblank character to indicate that the JCL statement is continued onto the next card. All commands, parameter names and values have to be in capitals, except for [[UNIX System Services|USS]] filenames. All lines except for in-stream input (see below) have to begin with a slash "<code>/</code>", and all lines which the operating system processes have to begin with two slashes <code>//</code> - always starting in the ''first column''. However, there are two exceptions: the delimiter statement and the comment statement. A delimiter statements begins with a slash and an asterisk (<code>/*</code>), and a comment statement in OS JCL begins with a pair of slashes and asterisk (<code>//*</code>) or an asterisk in DOS JCL. Many JCL statements are too long to fit within 71 characters, but can be extended on to an indefinite number of continuation cards by: {| class="wikitable" |- ! OS JCL !! DOS JCL |- | Ending all actual JCL cards except the last at a point where the syntax requires a comma (<code>,</code>) || Ending all actual JCL cards except the last at a point where the syntax requires a comma (<code>,</code>) and a non-blank character in column 72 |- | Starting each continuation card with <code>//</code> in column 1 and then at least 1 space || Starting each continuation card with spaces and continuing in column 15 |} The structure of the most common types of card is:<ref>Stern and Stern, ''Structured COBOL Programming'', pp. 529, 531.</ref> {| class="wikitable" |- ! OS JCL !! DOS JCL |- | *<code>//</code> *Name field for this statement, following <code>//</code> with no space between. If this statement does not have a name at least one blank immediately follows the <code>//</code>. *Space(s) *Statement type *Space(s) *Parameters, which vary depending on the statement type, separated by commas and with no space between them. || *<code>//</code> (spaces if this is a continuation of a previous line) *Statement type for this statement, following <code>//</code> with a space between. *Space(s) *Name of resource *Space(s) *Parameters, which vary depending on the statement type, separated by commas and with no space between them. Positional parameters, followed by keyword parameters. |}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)