Generated from C.60.01 /SYS/PUB/CICAT last modified on Thu Jan 11 09:18:52 2001
XEQ Executes any program or command file. Use the XEQ command to prevent any possible confusion when the name of the program or command file you want to execute is identical to the name of a built-in MPE/iX command or a user-defined command (UDC). You must have read or execute access to the program or command file specified on the XEQ command line. (NM) SYNTAX (for command files) XEQ filename [parameterlist] SYNTAX (for program files) XEQ filename [[;INFO=]quotedstring][[;PARM=]parmvalue]
filename The actual file name of the command file or program file to be executed. The search path (HPPATH) is used if filename is not qualified. parameterlist The list of parameters passed to filename when executing a command file. This list corresponds to the PARM line of the command file you intend to execute. When executing a program file, this list corresponds to the ;INFO= string or the to PARM= parameter or to both combined. quotedstring Specifies a parameter string for those program files that accept a parameter string. parmvalue Specifies a parameter for a program file to be executed.
This command executes filename, which may be a command file or a program file. XEQ uses the search path defined by the HPPATH variable. XEQ is needed only when filename references an existing, built-in MPE/iX command or a UDC command, but it may be used for any executable file. Searching for Command Files and UDCs With the introduction of POSIX in Release 5.0 of MPE/iX, command files can reside in the Hierarchical File System (HFS) and follow the more flexible POSIX naming conventions. For example, a command file can now be named "find_deduction", "123" or "AutoExec.BAT." UDC files are still restricted to MPE naming rules. If filename is a qualified MPE or POSIX filename such as "file.grp", "*feq", "$oldpass", "/bin/ls", "./do_it", then the HPPATH variable is not used to execute the command or UDC. Qualified MPE filenames include "file.group", "file.group.account", and backreferences to a file equation and system-defined files, such as $OLDPASS. Qualified POSIX names are absolute pathnames (the name starts at root, "/name"), or Current Working Directory (CWD) relative names (the name starts at the user's current working directory, "./name"). The command file named "a/b" can be considered a qualified POSIX name (file "b" under directory "a"), but for compatibility reasons this is first treated as an unqualified MPE name with a supplied lockword. Actually, "file.grp" could be an unqualified POSIX name (in which case HPPATH is used), but the MPE file "FILE" in the MPE group "GRP" is looked for first. In all cases, the MPE name is searched before the POSIX name. To execute unqualified POSIX-named command files, HPPATH must contain one or more entries specified in MPE-ESCAPED syntax. That is, the name must begin with a dot (".") or a slash ("/"). Since the default HPPATH, "!hpgroup,PUB,PUB.SYS,ARPA.SYS, contains no MPE-ESCAPED named entries, MPE/iX cannot locate unqualified POSIX-named command files unless you modify HPPATH. For example, if you define HPPATH to be "PUB.SYS,/bin,./mybin" then unqualified POSIX-named command files can be located in /bin and in CWD/mybin. To place POSIX-named command files in PUB.SYS, the System Manager needs to add a /SYS/PUB entry to HPPATH. MPE/iX processes MPE- or POSIX-named command files according to the following rules: * The command name is parsed twice, first via MPE rules and then via POSIX syntax rules. * If the name is a qualified MPE name (e.g., "a.b"), it is tried first. * If no matching file is found and the name is not a qualified POSIX name, then HPPATH is used to try to locate the name. (1) MPE path elements (group.accounts) are appended to the MPE parsed version of the command filename or POSIX path elements (directories) are prepended to the POSIX parsed version of the command name. (2) The name, qualified by the appropriate HPPATH element, is searched for until the first match. * If a file matching the command filename has still not been located and the command name is a qualified POSIX name (e.g., "./a", "/a", "a/b") then that exact name is searched for. At this point either there is a match or an "unknown command" error is reported.
The same command filename can be both a qualified MPE name and a qualified POSIX name, e.g., "a/b.c". This name could refer to file "A" in group "C" with lockword "B", or file "b.c" under directory "a". The qualified MPE version of the name is tried first. USE This command may be issued from a session, job, or program, or in BREAK. Whether or not the command is breakable depends upon what is being executed at the time you press [Break]. Files may terminate or suspend execution, unless they specify OPTION NOBREAK.
To execute a command file named fcopy.pub.myacct, enter XEQ fcopy Because FCOPY references an existing, built-in MPE/iX command, failing to use XEQ would result in running FCOPY. That would happen because FCOPY would be found in the command directory and would be executed, and the command search would terminate.
Help : Type HELP HPPATH at the colon (:) prompt, or type HPPATH at the Help facility (>) prompt to see an explanation of the HPPATH variable. Back to Main Index