Tricks with command files
May 10, 2006
I'm working on a command file on my HP 3000. Is there any way to have it copy part of itself into a separate (temporary) file?
HP's Jeff Vance replies:
MPE does not support the Unix concept of ‘here’ files, where input data for the command can reside in the same file as the command, except in the case of jobs. But even in a job, you may not include inline data for a script or UDC invoked by that job.
The SPOOKHELP script on Jazz may be of some use. This single script contains the help text for all of the SPOOK commands plus the code to search for and display that text once HELP xyzzy is entered.
How can we execute a command after a user enters the :bye command in MPE?
Olav Kappert replies:
It is possible to execute many commands after the bye has been entered. Simply create a UDC (maybe a cmd file) called bye.
The contents of the UDC for the command bye is up to you. This would be useful if you want to do statistics before the session terminates.
John Pittman adds:
Don’t let them do a bye. We don’t allow any users access to OP system prompt at all. They get a logon no break UDC that runs a menu, and when they end the menu, they get logged off.
Inside that UDC at exit time, we build a string giving user, connection point (LDEV or IP of their PC) connect time, CPU date etc and append it to a log file. Then we know when anybody last used the system, how many users are using different connections, when different user names are using the same connection point, and so on.
I am now beginning the process of restoring our production system to another 918LX. I got the following errors when logging onto a non-SYS account.
SECURITY VIOLATION (FSERR 93)
Couldn't open UDC file "UDCSYS03.UDC.SYS". (CIERR 1923)
No system-level UDCs have been initialized. (CIWARN 1929)
No UDC directory was built or exists. (CIWARN 2060)
The specified file "UDCSYS03.UDC.SYS" exists and has the following characteristics for the concerned user:
:listf udcsys03.udc.sys,4
*****************************************
FILE: UDCSYS03.UDC.SYS
ACCOUNT ------ READ : ANY
WRITE : AC
APPEND : AC
LOCK : ANY
EXECUTE : ANY
GROUP -------- READ : ANY
WRITE : AL, GU
APPEND : AL, GU
LOCK : ANY
EXECUTE : ANY
SAVE : AL, GU
FILE --------- READ : ANY FCODE: 0
WRITE : ANY **SECURITY IS ON
APPEND : ANY NO ACDS
LOCK : ANY
EXECUTE : ANY
FOR MANAGER.BACKUPS: READ, EXECUTE, LOCK
What else do I have to do to enable system level UDCs?
OpenMPE's Donna Garverick replies:
As manager.sys:
:showcatalog;user=manager.sys
(should show no system UDC set)
:setcatalog udcsys03.udc;system
Former OpenMPE director Ron Horner adds:
It sounds like the file COMMAND.PUB.SYS might have some issues. To test, perform a SHOWCATALOG and see what gets displayed.