ZOAU functionality overview

The functionality provided by IBM® Z Open Automation Utilities is categorized as follows.

You can find some simple coding examples of the shell commands and APIs for Python by following the links in the tables. For detailed information, see Shell command reference and Python API reference.

MVS program execution utilities

Function Shell Python Description
Execute an unauthorized MVS program mvscmd mvscmd.execute() Runs an unauthorized MVS command (program) that resides in a PDS or PDSE from the z/OS UNIX command line
Execute an authorized MVS program mvscmdauth mvscmd.execute_authorized() Runs an authorized MVS command (program) that resides in a PDS or PDSE from the z/OS UNIX command line

For a sample of how to use ZOAU to work with MVS resources, see Using commands and APIs provided by ZOAU.

Data set manipulation utilities

Function Shell Python Description
Check whether a data set exists dls datasets.exists() Lists non-VSAM data sets such as partitioned data sets and sequential data sets
Copy data sets dcp datasets.copy() Copies a fully qualified file (or files) to another file
Note: The file can be a partitioned data set, sequential data set, partitioned data set member, or HFS file.
Compare two data sets ddiff datasets.compare() Compares two files, each of which can be a partitioned data member or sequential data set
Write to a data set decho datasets.write() Writes a non-VSAM data set to stdout
Search for text in data sets dgrep datasets.search() Searches partitioned data sets, partitioned data set members, and sequential data sets for a string
List data sets dls datasets.listing() Lists non-VSAM data sets such as partitioned data sets and sequential data sets
Modify text blocks in data sets dmod datasets.blockinfile() Allows modification of blocks of text within a data set
Delete data sets drm datasets.delete() Deletes one or more non-VSAM or VSAM data sets
Archive data sets dzip datasets.zip() Archives a set of datasets to a binary file
Restore data sets dunzip datasets.unzip() Unzips a dzip binary file to the specified HLQ
Replace text in data sets dsed datasets.find_replace() Provides basic support for finding and replacing of a string in a partitioned data set, a partitioned data set member, or a sequential data set
Read text in a data set (all of the file) dcat datasets.read() Prints a data set member or a sequential data set
Read text in a data set (first *n* lines) dhead datasets.read() Prints the first *n* lines in a data set member or sequential data set
Read text in a data set (last *n* lines) dtail datasets.read() Prints the last *n* lines in a data set member or sequential data set
Read text in a data set (from the nth line) dtail datasets.read() Prints the last *n* lines starting from the nth line in a data set member or sequential data set
Create a data set dtouch datasets.create() Provides a way to allocate a partitioned data set, sequential data set, or VSAM data set
Rename a data set dmv datasets.move() Moves a data set to a new name
List data set members mls datasets.list_members() Lists partitioned data set members
Delete data set members mrm datasets.delete_members() Deletes one or more data set members
Rename a data set member mmv datasets.move_member() Moves a partitioned data set member to a new name

JES utilities

Function Shell Python Description
Submit a job jsub jobs.submit() Submits a data set that contains JCL
Cancel a job jcan jobs.cancel() Cancels and purges a job
List jobs jls jobs.listing() Lists jobs that match a pattern
List job DDs ddls jobs.list_dds() Lists ddnames for a given job
List job output for step name pjdd jobs.read_output() Lists the output for a given job id and ddname

System concatenation utilities

Function Shell Python Description
Get a temporary data set name mvstmp datasets.temp_name() Generates a valid MVS data set name that is suitable for use as a temporary data set
Find a member in a concatenation dwhence datasets.find_member() Searches for a member within a data set concatenation
Display the active link list pll zsystem.list_linklist() Displays the active link list concatenation
Search link list for a member llwhence zsystem.find_linklist() Searches for the data set in the link list that a module comes from
Display the active parmlib pparm zsystem.list_parmlib() Displays the active parmlib
Search parmlib for a string parmgrep zsystem.search_parmlib() Searches for a string across the parmlib concatenation
Search parmlib for a member parmwhence zsystem.find_parmlib() Searches for the data set in the parmlib concatenation that a member comes from
Display the active proclib pproc zsystem.list_proclib() Shows the dynamic proclib
Note: This is useful to determine where started tasks are searched for.
Search proclib for a string procgrep zsystem.search_proclib() Searches for a string across the proclib concatenation
Search proclib for a member procwhence zsystem.find_proclib() Searches for what data set of the proclib concatenation that a member comes from

Console utility

Function Shell Python Description
Display the console log pcon zsystem.read_console() Displays the last minute, hour or day or all of the operator console log

Operator utility

Function Shell Python Description
Submit an operator command opercmd opercmd.execute() Runs the specified operator command and writes the output to the console

Authorized Program Facility (APF) administration utility

Function Shell Python Description
Perform APF administration tasks apfadm zsystem.apf() Supports multiple APF tasks

Miscellaneous

Function Shell Python Description
Print the current HLQ hlq datasets.hlq() Returns the active TSO high-level qualifier