Job Control Language
Scripting languages for IBM mainframes / From Wikipedia, the free encyclopedia
This article is about IBM mainframe job control language. For open systems, see job control (Unix). For general term, see job control.
Job Control Language (JCL) is a scripting language used on IBM mainframe operating systems to instruct the system on how to run a batch job or start a subsystem.[1] The purpose of JCL is to say which programs to run, using which files or devices[2] for input or output, and at times to also indicate under what conditions to skip a step. Parameters in the JCL can also provide accounting information for tracking the resources used by a job as well as which machine the job should run on.
There are two distinct IBM Job Control Languages:
- one for the operating system lineage that begins with DOS/360 and whose latest member is z/VSE; and
- the other for the lineage from OS/360 to z/OS, the latter now including JES extensions, Job Entry Control Language (JECL).
They share some basic syntax rules and a few basic concepts, but are otherwise very different.[3]
The VM operating system does not have JCL as such; the CP and CMS components each have command languages.