The Scan IFS command scans one or more stream files for an argument.
If the argument is found anywhere in the stream file, a line is
listed identifying the IFS object. SCNIFS assists in searching for
values in the IFS.
Because the default for SCNIFS is to run CVTIFS and then scan data in
the IFS, performance can be a consideration.
A typical command would be:
SCNIFS ARGUMENT(xxx)
All stream files in the home directory would be scanned. One line
would be listed for each stream file that contained the argument.
The default for the OBJ parameter is '*' meaning the home directory.
A specific directory or stream file may be named.
The TAA CVTIFS command is used to create an outfile of IFS objects.
CVTIFS offers various selection criteria.
The special value *EXISTS may be specified to mean the CVTIFS outfile
already exists in which case the outfile name and member must be
specified. If *EXISTS is to be used, CVTIFS must specify
OUTFILFMT(*TYPE2).
The default is to translate the stream file data to upper case before
scanning.
Scan Technique
--------------
APIs are used to read the stream files in 64,000 byte blocks.
Because the argument may be split over two 64,000 byte blocks, the
last 20 bytes from each block is placed in a scan area with the next
64,000 byte block before the scan occurs.
SCNIFS escape messages you can monitor for
-------------------------------------------
None. Escape messages from based on functions will be re-sent.
Command parameters *CMD
------------------
ARGUMENT Up to 20 bytes of the argument to be scanned for.
The argument value is folded to upper case by
command processing. By default the IFS data is
folded to upper case before scanning.
To scan for a lower case value only, specify the
argument in quotes and TRANSLATE(*NO).
OBJ The path name of the object to be scanned. The
object path name can be either a simple name or a
name that is qualified with the name of the
directory in which the object is located. The
default is *.
Specifying * will start the convert process at the
current directory level. If the current directory
level is at the root ('/'), the convert process will
start at the home directory ('/home').
You must be authorized to the TAACVTIFS
authorization list to specify a path name.
The special value of *IFS may also be entered.
Specifying *IFS will start the convert process at
the root directory level ('/') excluding /QDLS,
/QOPT and /QSYS.LIB.
The special value *EXISTS may be entered if CVTIFS
has already been run and you want to use the created
outfile. If *EXISTS is used, the IFSDIRPLIB and MBR
parameters must specify the library and member of
the existing file. If *EXISTS is to be used, CVTIFS
must specify OUTFILFMT(*TYPE2). See the OUTFILFMT
parameter for the file name.
TRANSLATE A *YES/*NO parameter for whether the IFS data should
be translated to upper case before scanning. *YES
is the default.
*NO may be specified when scanning for a specific
lower case value. The argument must be in quotes.
IFSDIRPLIB The library of the existing file if OBJ(*EXISTS) is
specified. The default is *LIBL. *CURLIB may also
be entered. See the OUTFILFMT for the name of the
file.
MBR The member of the existing file if OBJ(*EXISTS) is
specified. The default is *FIRST. *LAST may also
be entered.
This parameter is ignored if *EXISTS is not
specified for the OBJ parameter.
MAXSCN The maximum number of characters to be scanned. Up
to 9 digits may be entered. This allows a method of
avoiding very large stream files such as save files.
The default is 999,999,999 or just short of 1
billion bytes.
The number specified determines how far into an object will be
scanned.
USRPRF The user profile that will be switched to during run
time. QSECOFR is the default. For file systems
(such as QNTC), CVTIFS will fail if QSECOFR does not
exist.
*CURRENT may be used or a specific user profile, but
the profile must have *ALLOBJ special authority.
Restrictions
------------
None.
Prerequisites
-------------
The following TAA Tools must be on your system:
CHKIFSE Check IFS entry
CHKOBJ3 Check object 3
CHKSPCAUT Check special authority
CRTDUPPF Create duplicate physical file
CVTIFS Convert IFS
EDTVAR Edit variable
RSNLSTMSG Resend last message
RTVSYSVAL3 Retrieve system value 3
SNDCOMPMSG Send completion message
SNDESCINF Send escape information
SNDESCMSG Send escape message
SNDJLGMSG Send job log message
SNDSTSMSG Send status message
Implementation
--------------
None, the tool is ready to use.
Objects used by the tool
------------------------
Object Type Attribute Src member Src file
------ ---- --------- ---------- ----------
SCNIFS *CMD TAAIFTK QATTCMD
TAAIFTKC *PGM CLP TAAIFTKC QATTCL
TAAIFTKC2 *PGM CLP TAAIFTKC2 QATTCL
TAAIFTKR *PGM RPGLE TAAIFTKR QATTRPG
|