The FATMEN shell may be tailored by
KUIP macros consist of files containing FATMEN or KUIP system commands. A trivial example might contain commands such as
Example macro CDOPAL KUMAC
MESS 'Initialise FATMEN for OPAL' INIT OPAL MESS 'Change directory to PROD/PASS3/FILT/P1R1039L044' CD PROD/PASS3/FILT/P1R1039L044 MESS 'Count the number of files in this directory' FC
The output of the above macro is given below:
Result of executing CDOPAL KUMAC
FAT3@cernvm; fm Type INIT to initialise FATMEN> exec cdopal FMINIT. Initialisation of FATMEN package FATMEN 1.05 900312 13.00 CERN PROGRAM LIBRARY FATMEN=Q123 This version created on 900312 at 1600 Linked to FMOPAL mode Z FAOPEN : for FARZ on Unit 1 opened File CERN FATRZ Current Working Directory = //CERN/OPAL Current Working Directory = //CERN/OPAL/PROD/PASS3/FILT/P1R1039L044 Files: 5 FM>
Further details can be found in the KUIP Long writeup
Extra commands maybe added to the FATMEN shell by
For example, we could add the command XLS which would
(In fact, the ls command has been modified to do just this!)
Our action routine, FMXLSC, might look like the following:
Adding commands to the FATMEN shell
CDF file for XLS command
>COMMAND XLS
>GUIDENCE
Use the XLS command to perform an extended LS command.
Syntax: XLS path options
Options:
A - list all attributes, except DZSHOW (option Z).
C - display comment field associated with file
F - list file attributes, such as start/end record and block
G - list the full generic name of each file
K - list keys associated with this file (copy level, media type, location)
L - list logical attributes, such as FATMEN file format
(ZEBRA exchange etc.)
M - list media attributes, such as VSN, VID, file sequence number for tape
files, host type and operating system for disk files.
N - lists dataset name on disk/tape of this file
O - list owner, node and job of creator etc.
P - list physical attributes, such as record format etc.
S - lists security details of this file (protection)
T - list date and time of creation, last access etc.
U - list user words.
Z - dump ZEBRA bank with DZSHOW.
>ACTION FMXLSC
>PARAMETERS
+
FILE 'File or pathname' C D='CURRENT_DIRECTORY'
OPTN 'Options' C D=' '
Example action routine, FMXLSC
SUBROUTINE FMXLSC
PARAMETER (MAXFIL=10000)
PARAMETER (LKEYFA=10)
DIMENSION KEYS(LKEYFA,MAXFIL)
CHARACTER*255 FILES(MAXFIL)
CHARACTER*255 PATH
CHARACTER*25 CHOPT
*
CALL KUGETC(PATH,LPATH)
CALL KUGETC(CHOPT,LCHOPT)
*
CALL FMLIST(PATH(1:LPATH),FILES,KEYS,NFOUND,MAXFIL,IRC)
*
DO 10 I=1,NFOUND
10 CALL FMSHOW(FILES(I),LBANK,CHOPT(1:LCHOPT),IRC)
*
END