HP 3000 Manuals

The Spoolfile Interface Facility (SPIFF) (contd.) [ Native Mode Spooler Reference Manual ] MPE/iX 5.0 Documentation


Native Mode Spooler Reference Manual

The Spoolfile Interface Facility (SPIFF) (contd.) 

SPIFF commands (contd.) 

DEBUG 

Invokes the MPE/iX DEBUG facility if the SPIFF user has privileged mode
(PM) capability.

Syntax 

> D[EBUG]

Operation Notes 

The DEBUG command (abbreviated D) allows a user with privileged mode
capability to enter the MPE/iX DEBUG facility.  This is seldom necessary
in normal use.


CAUTION The normal checks and limitations that apply to standard MPE/iX users are bypassed in privileged mode. It is possible for a privileged mode user of DEBUG to destroy file integrity, including the MPE/iX operating system software itself.
Additional Discussion Refer to the detailed discussion of the DEBUG facility in the System Debug Reference Manual (32650-90013). Consult this document before attempting to use the DEBUG command. EXIT Terminates SPIFF, returning control to its parent process. Syntax > E[XIT] Operation Notes The EXIT command (abbreviated E) terminates the SPIFF process. Any current spool file is closed before SPIFF terminates. Control is returned to SPIFF's parent process. This is usually a command interpreter, but may be another application if that application supports creation of a child process. In particular, SPIFF may be run from within another copy of SPIFF, using the RUN command. EXITing the second copy of SPIFF returns control to the first instance of SPIFF. The EXIT command and the QUIT command operate identically.
NOTE It is not possible to suspend operation of a child SPIFF process, give control to a parent SPIFF process, and return to the child SPIFF process, as the SPOOK5 program permitted you to do. Each exit of a child process terminates that process and closes all open files associated with that process. Each child process starts afresh when created. As a result, the KILL command is not supported by SPIFF.
FIND Locates a specified pattern in a specified range of the current spool file. Syntax [@] > F[IND] [+] ["string"] [,range] [^] where range is [[recnumber[{+} offset]] [, count ]] [[ [{-} ]] [/ recnumber[{+} offset]]] [[ ] [ [{-} ]]] [[* [{+} offset] ] [ ]] [[ [{-} ] ] [/ * [{+} offset] ]] [[ ] [ [{-} ] ]] [[FIRST [{+} offset] ] [ ]] [[ [{-} ] ] [/ FIRST [{+} offset] ]] [[ ] [ [{-} ] ]] [[LAST [{+} offset] ] [ ]] [[ [{-} ] ] [/ LAST [{+} offset] ]] [ [ [{-} ] ]] [ ] [ALL ] Semantics The FIND command operates only on the currently TEXTed spool file. It is an error if used when there is no current spool file. Range expressions are limited to: (first line number of file) <= expression <= (last line number of file). Lines are numbered from 0 to N-1. No error is generated for exceeding these limits; SPIFF simply limits the expression. For example, FIRST-2 evaluates to FIRST. Specifying a first position range expression that evaluates to a greater line number than that of the second position range expression is an error.
NOTE The expression, not its components, is tested. A range of LAST/FIRST is always an error, but a range of LAST-20/FIRST+40 is valid for any file consisting of no more than 61 lines (numbered 0 to 60).
Parameters @ By default, FIND locates only those occurrences of "string" that begin at the first character of a line. Specification of @ causes FIND to locate occurrences of "string" without regard to their position in the line. You can use the MODE @ =... command to enable or disable the @ option. With the option enabled, it is not necessary to specify the @ as part of the FIND command; however, specifying it is not an error and has no effect on command operation. + By default, the FIND operation stops at the first occurrence of the pattern in the specified (or defaulted) line range. Specification of + causes FIND to locate all occurrences of the pattern in the range. You can use the MODE + =... command to enable or disable the + option. With the option enabled, it is not necessary to specify the + as part of the FIND command; however, specifying it is not an error and has no effect on command operation. __________________________________________________________ NOTE Do not confuse this use of + with that of the addition (positive offset) operator in a range expression. __________________________________________________________ ^ By default, FIND is case sensitive. If you specify "error" as the search pattern, lines containing Error or ERROR will not be detected. Specifying ^ (caret) makes FIND case insensitive. You can use the MODE ^ =... command to enable or disable the ^ option. With the option enabled, it is not necessary to specify the ^ as part of the FIND command; however, specifying it is not an error and has no effect on command operation. "string" The pattern to be located by FIND. The double quotes are required around the pattern. If you omit this parameter, FIND locates the first line in the specified or defaulted line range. range The subset of records of the spool file(s) to search. The default range is from the current record to the last one, that is */LAST. Any line number specified that is outside the range of lines in the spool file will be handled as though FIRST or LAST was specified, as appropriate. If the range consists of two expressions, the first expression must evaluate to a number no larger than the second. ALL Specifies that all of the records in the spool file(s) should be searched. No other range element is allowed if this keyword is used. FIRST The first record in the spool file. LAST The last record in the spool file. * The current record in the spool file. recnumber An absolute record or line number of text in the spool file. Records are numbered starting with 0. offset A relative number of records before (-) or after (+) the specified record. count A numeric value, the number of lines to be searched, including the starting record. Operation Notes The FIND command searches a range of records in the currently TEXTed spool file for a specified pattern string, displaying the first one found. A command option allows displaying all matches found in the range. With no options specified, the FIND command searches for and displays the first case sensitive match of the specified string if the match begins in column 1 of the record. Any of the three options broaden the searching capabilities of the command. The options may be specified singly or in any combination. Thus @+^+@++@^ and ++++ are both valid. Refer to the "Syntax" description above. Any or all of the three options may be enabled or disabled by using the appropriate option of the MODE command. If an option is enabled using MODE, it need not be specified in the FIND command. Enabling an option already enabled by the MODE command is not an error and has no effect on command operation. The current record pointer is left at the record following the one that matches the specified pattern, unless the + option is specified or unless no match is found in the specified range. For either of these situations, the current record pointers is left at end-of-range + 1 (or at LAST, whichever is less). Examples EXAMPLES OF range: */*+20 *-20/* ALL FIRST/LAST */LAST LAST-100/LAST FIRST,20 100/200 5 EXAMPLES OF COMMANDS: Command Action FIND +^@ "error", ALL'' Locates all records in the spool file containing the pattern "error", whether in upper or lower case (or a mixture thereof), anywhere in the line. FIND ^@ "error", FIRST/100'' Restricts the search to the first occurrence of that same pattern, this time somewhere in the first 101 records. FIND @ "error", */LAST'' Locates the first occurrence of the pattern whose case, upper or lower, exactly matches that specified, this time somewhere between the current record and the last. HELP Displays information about SPIFF and its commands. Syntax [FEATURES ] [SUMMARY ] > H[ELP] [[ [ALL ]]] [[command [PARMS ]]] [[ [OPERATION]]] [[ [EXAMPLE ]]] Parameters none If you invoke HELP with no parameters, the Help Facility will be interactive until you enter E or EXIT. Refer to the "Operation Notes" section. To enter the MPE/iX help facility, use :HELP. Be sure to insert a colon before the HELP command. FEATURES Displays a short description of new SPIFF features along with differences between SPIFF and SPOOK5. SUMMARY Displays all available commands and their syntax. This is the closest match to SPOOK5's HELP or XPLAIN commands. command A SPIFF or MPE/iX command. You may specify a command file to which you have read access or a UDC, as long as neither one contains OPTION NOHELP. ALL Displays all help text for the command. This consists of all three sections, PARMS, OPERATION and EXAMPLE. PARMS Displays the PARMS section of the command's help text. OPERATION Displays the OPERATION section of the command's help text. EXAMPLE Displays the EXAMPLE section of the command's help text. Operation Notes The HELP command (abbreviated H) invokes SPIFF's help facility. The facility has an interactive mode and a direct access mode. Both are described below. Either mode has a scrolling facility, that is, if a display requires more than 23 lines, you are prompted whether or not to continue the display. * Interactive access mode If HELP is entered with no parameters, as in HELP it enters the interactive mode, displays a table of contents and double greater-than (>>) prompt, and awaits your input. Entering any topic in the table of contents produces a description of that topic. Entering any command name (except EXIT) produces the syntax for that command and a list of the keywords. Entering a keyword such as PARMS produces a listing of all the items for that keyword (all parameters in this case). You can append the keyword to the command name and get only the help text for that keyword of that command. _________________________________________________________________ NOTE Because E[XIT] exits the interactive mode, the only way to obtain a description of SPIFF's EXIT command is by entering H[ELP] EXIT. _________________________________________________________________ * Direct access mode If HELP is entered with one or more parameters, it enters direct access mode. It displays the text specified by your parameter(s), then returns you to the SPIFF prompt. Depending on the parameter(s), you can display summary help text for all commands, a detailed description of a specified SPIFF or MPE/iX command, or a brief description of SPIFF features. The Help response to keyboard input depends on what is happening at the time: * At a scrolling continuation prompt--(xx/yy) Continue?--or while the output is in the process of being displayed, you are actually within the MPE/iX PRINT command. If the response is such that the PRINT command is terminated, you are returned to the appropriate SPIFF prompt (>> or >), depending on how you began the text display. Refer to the discussion of the PRINT command in the MPE/iX Commands Reference Manual (32650-90003) to determine its response to keyboard input. In addition to the responses described there, a CTRLY response also terminates the PRINT command and returns you to an SPIFF prompt. * At an interactive mode prompt (>>), entering E[XIT] or : terminates interactive mode, returning you to the SPIFF command prompt. CTRLY has no effect. Pressing Return (Enter on some keyboards) causes SPIFF to display information up to the next keyword or command, or until 23 lines have been displayed, whichever comes first. SPIFF HELP vs. MPE/iX HELP Entering H[ELP] puts you in the interactive mode of SPIFF Help. Entering :HELP puts you in the interactive mode of of the MPE/iX help facility. Entering H[ELP] followed by one or more parameters causes SPIFF to search its help file (SPHLP000.PUB.SYS) first. If it finds an entry for the first parameter, it displays appropriate text and returns to the SPIFF prompt. If it cannot find an entry corresponding to the first parameter, it passes the parameter list to the MPE/iX help facility. If an entry is found there, again, the appropriate text is displayed and you are returned to the SPIFF prompt. If the parameter is neither a SPIFF or an MPE/iX command, you get the MPE/iX message: Can't find anything under this command or in table of contents. If you enter :HELP followed by one or more parameters, SPIFF goes directly to the MPE/iX help facility (direct access mode) without checking SPIFF's HELP first.
NOTE The full form of the :HELP command is required. The :H abbreviation will not work, because it is not a valid MPE/iX command.
INPUT Inputs one or more spool files from a tape created by SPOOK5 or SPFXFER. Syntax > I[NPUT] {spoolfileid [,spoolfileid [,...]]}; *tapefile {username[.acctname] } Parameters spoolfileid An existing spoolid to which the user has access. To be taken as a spoolid (instead of a username), this parameter must begin with a number or with a pound sign (#). The full syntax is [#O]nnnnn, where the n's represent digits. If the # is used, the O must also be used. If the O is used without the #, the parameter is interpreted as a user name and will probably cause an error. username The name of a user on the system or @. This parameter, when used with the optional acctname, specifies the set of spool files to be input. The SPIFF user must have access to files generated by username. Refer to "Security" . acctname The name of an account on the system or @. The parameter, when used with the username, specifies the set of spool files to be input. Default: the logon account is assumed. The SPIFF user must have access to files generated by users in acctname. Refer to "Security" . tapefile The backreferenced name of a file equation that specifies a tape device or class. Operation Notes Syntax checking is performed by SPIFF, but the command is executed by running SPFXFER.PUB.SYS as a child process. Any errors generated by SPFXFER are reported. SPIFF supports the INPUT command by invoking SPFXFER.PUB.SYS as a child process, passing the SPIFF command line to it in an internal temporary $STDIN file. This has several consequences: * The tape interface format recognized by SPOOK5 and by SPFXFER requires a particular combination of values for the REC= parameter of a file equation. Do not specify a REC= parameter in your file equation. The wrong combination of values may cause SPFXFER to return an error without transferring your file(s). It is a good idea to limit your file equation to the form: FILE MYTAPE;DEV=TAPE * SPFXFER does not support full wildcarding for either the username or the acctname parameters. The only wildcard permitted for either parameter is @. * SPFXFER displays a prompt before reading the command from the temporary file. You cannot and need not respond to the prompt. If control does not return to you immediately, either SPFXFER is currently reading in the spool files as requested, or (more likely) SPFXFER is waiting for a console reply--indicating that the desired tape has been mounted, enabling it to access the tape drive specified by *tapefile * SPFXFER requires a space between the I[NPUT] command and the source file specification. If you omit the space, as in > I@.@, SPFXFER reports an error. Example Assume that spoolid #O6490 exists on a tape device defined by FILE MYTAPE: INPUT 6490; *MYTAPE Invoking SPFXFER.PUB.SYS. Ignore prompts until further notice. (SPMSG 185) SPFXFER A.03.00 (C) HEWLETT-PACKARD CO., 1989 > Do not respond to this prompt #FILE ====> #FILE #JOB DEV/CL OWNER #O6490 ====> #O23195 #J'2 LP MYUSER.MYACCT > SPIFF has regained control from SPFXFER. (SPMSG 186) LIST Lists a line range of the currently TEXTed spool file to $STDLIST. Syntax > L[IST] [range] where range is [[recnumber[{+} offset]] [, count ]] [[ [{-} ]] [/ recnumber[{+} offset]]] [[ ] [ [{-} ]]] [[* [{+} offset] ] [ ]] [[ [{-} ] ] [/ * [{+} offset] ]] [[ ] [ [{-} ] ]] [[FIRST [{+} offset] ] [ ]] [[ [{-} ] ] [/ FIRST [{+} offset] ]] [[ ] [ [{-} ] ]] [[LAST [{+} offset] ] [ ]] [[ [{-} ] ] [/ LAST [{+} offset] ]] [ [ [{-} ] ]] [ ] [ALL ] Semantics The LIST command operates only on the currently TEXTed spool file. It is an error if used when there is no current spool file. Range expressions are limited to: (first line number of file) <= expression <= (last line number of file). Lines are numbered from 0 to N-1. No error is generated for exceeding these limits; SPIFF simply limits the expression. For example, FIRST-2 evaluates to FIRST. Specifying a first position range expression that evaluates to a greater line number than that of the second position range expression is an error.
NOTE The expression, not its components, is tested. A range of LAST/FIRST is always an error, but a range of LAST-20/FIRST+40 is valid for any file consisting of no more than 61 lines (numbered 0 to 60).
Parameters range The range of lines of the spool file to list. By default (when the range parameter is omitted), only the current record is listed; this is equivalent to LIST *. Any line number specified that is outside the range of lines in the spool file will be handled as though FIRST or LAST was specified, as appropriate. If your range consists of two expressions, the first expression must evaluate to a number no larger than the second. ALL Specifies that all of the records in the spool file should be listed. No other range element is allowed if this keyword is used. FIRST The first record in the spool file. LAST The last record in the spool file. * The current record in the spool file. recnumber An absolute record or line number of text in the spool file. Records are numbered starting with 0. offset A relative number of records before (-) or after (+) the specified record. count A numeric value, the number of lines to be listed, including the starting record. Operation Notes The LIST command (abbreviated L) lists a range of records of the current spool file to $STDLIST. Omitting the range parameter is the same as specifying LIST *. In either case, the current record pointer is left at the record following the last record in range, or at LAST, whichever is less. It is an error to use the LIST command if you do not have a current spool file.
NOTE The ouput of the LIST command does not pause at nominal screen intervals the way that the output from HELP does. To list short intervals of the spool file, enter a command such as > LIST */*+10 as many times as you need to view the portion(s) of the file that you wish to see.
Examples EXAMPLES OF range: */*+20 *-20/* ALL FIRST/LAST */LAST LAST-100/LAST FIRST,20 100/200 5 EXAMPLE OF A COMMAND: LIST FIRST/10 0 1 2 :JOB MYJOB,MYUSER.MYACCT. 3 PRIORITY = DS; INPRI = 8; TIME = UNLIMITED SECONDS. 4 JOB NUMBER = #J624. 5 THU, DEC 19, 1991, 10:24 AM. 6 HP3000 RELEASE: B.30.00 USER VERSION: B.30.00 7 MPE XL HP31900 B.08.14 Copyright Hewlett-Packard 1987. 8 All Rights Reserved. 9 STREAMED BY MYUSER.MYACCT (#S385) ON LDEV# 43 10 STREAM DATE: THU, DEC 19, 1991, 10:24 AM MODE Controls the width and format of the displayed output of the LIST and FIND commands. Syntax > M[ODE] {option [,option [,...]]} where {option} is { {[+] nnn}} {W[IDTH] = {[-] }} { { }} { {OFF }} { } {C[ONTROLS] = {ON } } { {OFF} } { } {@ = {ON } } { {OFF} } { } {+ = {ON } } { {OFF} } { } {^ = {ON } } { {OFF} } { } {D[OTS] = {ON } } { {OFF} } Parameters nnn An integer indicating the maximum number of characters to be displayed per record by LIST and FIND. A positive value indicates display width in MPE/iX halfwords (one halfword = 2 bytes), while a negative value indicates width in bytes. The range of nnn is -32767 to +32767; however, operating system limits are reached well before these limits. WIDTH WIDTH=OFF (default) causes SPIFF to display records in their entirety, except as limited by the width of the $STDLIST output device. WIDTH=[+/-]nnn limits the display width of records displayed by the LIST and FIND commands. A negative number indicates a width in bytes, and a positive number indicates a width in 16-bit words (2 * nn bytes). WIDTH=[+/-] nnn defines the maximum width of the displayed record. The record includes a space for at least three digits of line number and a separating blank. Beyond line 999, additional digits are added to the line number as required, and the data is moved a corresponding number of bytes to the right, truncating the same number of additional bytes from the right end of the record. With WIDTH=80 in effect, for example, as many as 76 characters of data per record are displayed for records between 0 and 999. For records 1000/9999, as many as 75 characters of data per record are displayed. Only the display width is affected. The FIND command can successfully match a pattern even if the pattern lies partly or entirely beyond that part of the record that is displayed. The + and - are optional. If either is used, there must be no space between it and the number that follows. CONTROLS CONTROLS=OFF (default) disables formatted display of I/O control information. CONTROLS=ON enables formatted display of I/O control information. When CONTROLS=ON is in effect, the display is the same as that used by the PRINTSPF utility. @ @=OFF (default) causes the FIND command to match its specified pattern only if the matching pattern begins at the first character of a record. @=ON allows FIND to match its pattern anywhere in a record. + +=OFF (default) causes the FIND command to stop at the first matched pattern in its specified (or defaulted) line range. +=ON causses FIND to locate all matching patterns in the range. ^ ^=OFF (default) causes the FIND command to match its pattern only if the individual bytes in the candidate record match those of the pattern in a case-sensitive fashion. For example, "A" matches "A", but not "a". ^=ON results in a case-insensitive search. DOTS DOTS=ON (default) results in a translation of all non-printing characters (such as CtrlN and ESC) to dots before being displayed by the LIST or FIND command. DOTS=OFF disables such translation. Characters are sent to the display device exactly as they occur in the file.
CAUTION Many display devices and communication links respond to escape sequences and other non-printing characters. Similar sequences may occur randomly in binary data. You should not set DOTS=OFF if your communication link may be adversely affected. You should set your terminal to "Display Functions" before displaying any unknown data. This mode is intended primarily for checking or debugging output data.
Operation Notes The MODE command (abbreviated M) controls the width and format of LIST and FIND spool file record displays. Settings assigned with this command remain in effect until changed by another MODE command. MODE allows you to concatenate as many options as you wish, as long as each is separated from the next by a comma. In case of duplication or conflict, the rightmost option is used. Examples Assume that the spool file used in the example for the LIST command is also the currently TEXTed spool file here. Here is the same fragment of display output: LIST FIRST/10 0 1 2 :JOB MYJOB,MYUSER.MYACCT. 3 PRIORITY = DS; INPRI = 8; TIME = UNLIMITED SECONDS. 4 JOB NUMBER = #J624. 5 THU, DEC 19, 1991, 10:24 AM. 6 HP3000 RELEASE: B.30.00 USER VERSION: B.30.00 7 MPE XL HP31900 B.08.14 Copyright Hewlett-Packard 1987. 8 All Rights Reserved. 9 STREAMED BY MYUSER.MYACCT (#S385) ON LDEV# 43 10 STREAM DATE: THU, DEC 19, 1991, 10:24 AM > FIND + "STREAM", ALL 9 STREAMED BY MYUSER.MYACCT (#S385) ON LDEV# 43 The "STREAM" in line 10 is not matched because no @ is in effect. > MODE @=ON, += ON > FIND + "STREAM", ALL 9 STREAMED BY MYUSER.MYACCT (#S385) ON LDEV# 43 10 STREAM DATE: THU, DEC 19, 1991, 10:24 AM The + is redundant here, but is not an error. > FIND "copyright", ALL The "Copyright" in line 7 is not matched because this is a case-sensitive search. With the appropriate MODE setting: > MODE ^=ON > FIND "copyright", ALL 7 MPE XL HP31900 B.08.14 Copyright Hewlett-Packard 1987. > MODE WIDTH=-40 > LIST 0/10 0 1 2 :JOB MYJOB,MYUSER.MYACCT. 3 PRIORITY = DS; INPRI = 8; TIME = UNL 4 JOB NUMBER = #J624. 5 THU, DEC 19, 1991, 10:24 AM. 6 HP3000 RELEASE: B.30.00 USER VERS 7 MPE XL HP31900 B.08.14 Copyright H 8 All Rights Reserved. 9 STREAMED BY MYUSER.MYACCT (#S385) ON 10 STREAM DATE: THU, DEC 19, 1991, MODE WIDTH=-60,CONTROLS=ON LIST 0/10 0 OP P1=$0000 P2=$0000 1 WR P1=$0001 P2=$0000 CC=%061 2 WR P1=$0001 P2=$0000 CC=%000 BUF/# 25= :JOB MYJOB,MYUSE 3 WR P1=$0001 P2=$0000 CC=%000 BUF/# 51= PRIORITY = DS; I 4 WR P1=$0001 P2=$0000 CC=%000 BUF/# 19= JOB NUMBER = #J6 5 WR P1=$0001 P2=$0000 CC=%000 BUF/# 28= THU, DEC 19, 199 6 WR P1=$0001 P2=$0000 CC=%000 BUF/# 48= HP3000 RELEASE: 7 WR P1=$0001 P2=$0000 CC=%000 BUF/# 56= MPE XL HP31900 8 WR P1=$0001 P2=$0000 CC=%000 BUF/# 20= All Rights Reser 9 WR P1=$0001 P2=$0000 CC=%000 BUF/# 40= STREAMED BY MYUS 10 WR P1=$0001 P2=$0000 CC=%000 BUF/# 45= STREAM DATE:


MPE/iX 5.0 Documentation