FUSSMFIL
You can use the FUSSMFIL exec to queue transfers to send multiple files to a remote node.
You can use this exec to send multiple files to a remote system in one command. The FUSSMFIL exec uses the same parameters as the FUSSEND exec. This exec uses the LFILE parameter as a high-level prefix and scans the catalog for all files that match the high-level prefix. Then, it substitutes information of the LFILE parameter into the RFILE parameter, and queues a file transfer for each data set that matches the high-level qualifier.
The platform server only supports to initiate up to 500 transfers on any single FUSSMFIL transfer. If more than 500 files match the LFILE prefix, an error message is displayed and no transfers is queued.
Wildcard Parameter
The LFILE parameter accepts a single wildcard parameter, *.
You must use at least one full z/OS prefix before the first wildcard. For example, LF=PROD.* is acceptable, while LF=PROD* is illegal and will not be processed.
The following examples show how to use the wildcard parameter in the FUSSMFIL exec:
Substitutable Parameters
Three substitutable parameters can be set with the FUSSMFIL exec. You must define one of these parameters within the RFILE parameter; otherwise, the request fails.
Parameter | Description |
---|---|
%LFILE | Substitutes the entire
LFILE parameter.
For example: FUSSMFIL NODE=SNANODE LF=LOCAL.FILE.CRE* RF=C:\%LFILE INTERVAL=3 SAY WAIT The output of this example is the same as that of the FUSSEND or FUSRECV exec. You get the output for each file that is transferred. |
%SUFFIX | Substitutes the data after the high-level prefix defined.
For example: FUSSMFIL IPADDR=127.127.127.1 IPPORT=46464 LF=LOCAL.FILE.CRE* RF=C:\ACCT.%SUFFIX INTERVAL=3 SAY WAIT The output of this example is the same as that of the FUSSEND or FUSRECV exec. You get the output for each file that is transferred. |
%NOHLQ | Substitutes all data except the high-level qualifier (HLQ).
For example: FUSSMFIL NODE=SNANODE LF=LOCAL.FILE.CRE* RF=C:\ACCT.%NOHLQ INTERVAL=3 SAY WAIT The output of this example is the same as that of the FUSSEND or FUSRECV exec. You get the output for each file that is transferred. |
In the following example, you can extract four files from the catalog:
LF=PROD.TESTV*
The following table shows the remote files for each RF command:
The TEST Parameter
When you use the TEST parameter in the FUSSMFIL exec, the exec displays and tests the LF and RF files to be passed to the platform server instead of queuing the request. In this way, you can ensure that only the correct files are queued before a transfer request is queued.
For example:
FUSSMFIL lf=prod.acct98.* rf=acct.%nohlq ipaddr=14.0.0.0 ipport=46464 test,
The response is as follows:
LFILE=PROD.ACCT98.PAYROLL RFILE=acct.ACCT98.PAYROLL LFILE=PROD.ACCT98.TAXES RFILE=acct.ACCT98.TAXES LFILE=PROD.ACCT98.TAXES.BKUP RFILE=acct.ACCT98.TAXES.BKUP
The following example queues a transfer to send multiple files to a remote node, substitutes the entire %LFILE parameter, and tests the local files (LF) and the remote files (RF) that are queued:
FUSSMFIL NODE=SNANODE LF=LOCAL.FILE.CRE* RF=C:\%LFILE INTERVAL=3 SAY WAIT TEST
The output of this example is as follows:
LFILE=LOCAL.FILE.CREATE.FILE1 RFILE=C:\LOCAL.FILE.CREATE.FILE1 LFILE=LOCAL.FILE.CREATE.FILE2 RFILE=C:\LOCAL.FILE.CREATE.FILE2 LFILE=LOCAL.FILE.CREATE.FILE3 RFILE=C:\LOCAL.FILE.CREATE.FILE3 LFILE=LOCAL.FILE.CREATE.FILE4 RFILE=C:\LOCAL.FILE.CREATE.FILE4
The following example queues a transfer to send multiple files to a remote node, substitutes the data after the high-level prefix defined, and tests the local files (LF) and the remote files (RF) that are queued:
FUSSMFIL IPADDR=127.127.127.1 IPPORT=46464 LF=LOCAL.FILE.CRE* RF=C:\ACCT.%SUFFIX INTERVAL=3 SAY WAIT TEST
The output of this example is as follows:
LFILE=LOCAL.FILE.CREATE.FILE1 RFILE=C:\acct.ATE.FILE1 LFILE=LOCAL.FILE.CREATE.FILE2 RFILE=C:\acct.ATE.FILE2 LFILE=LOCAL.FILE.CREATE.FILE3 RFILE=C:\acct.ATE.FILE3