Michael gave us a PRINTO-like command file, and I replied with my own,
and here's another that I use *all* the time (especially checking COBOL
listings for errors):
:HELP TAIL
USER DEFINED COMMAND FILE: TAIL.XEQ.SYS
PARM FILE,START=0,PAGE=23,PARM=" "
IF !START = 0
SETVAR LINE, 2 - !PAGELEN
ELSE
SETVAR LINE, 2 - !START
ENDIF
IF NUMERIC("!FILE") THEN
IF NOT FINFO("O!FILE.OUT.HPSPOOL",0) THEN
ECHO NONEXISTENT PERMANENT FILE: O!FILE.OUT.HPSPOOL
RETURN
ENDIF
PRINT O!FILE.OUT.HPSPOOL;START=!LINE;PAGE=!PAGELEN;!PARM
RETURN
ENDIF
IF ( LFT("!FILE",1)="O" AND NUMERIC(RHT("!FILE",LEN("!FILE")-1)) ) THEN
IF NOT FINFO("!FILE.OUT.HPSPOOL",0) THEN
ECHO NONEXISTENT PERMANENT FILE: !FILE.OUT.HPSPOOL
RETURN
ENDIF
PRINT !FILE.OUT.HPSPOOL;START=!LINE;PAGE=!PAGELEN;!PARM
RETURN
ENDIF
IF ( ( UPS(LFT("!FILE",1))="J" ) AND NUMERIC(RHT("!FILE",LEN("!FILE")-1))
) OR (
( UPS(LFT("!FILE",2))="#J" ) AND NUMERIC(RHT("!FILE",LEN("!FILE")-2)) )
THEN
SETJCW CIERROR,0
LISTSPF O@;SELEQ=[JOBNUM=!FILE] > LSFILE
IF CIERROR <> 0 THEN
ECHO NONEXISTENT $STDLIST FOR !FILE
ELSE
SETVAR FIRST_CHAR, "A"
SETVAR LINE_NUMBER, 4
WHILE FIRST_CHAR <> "$"
PRINT LSFILE;START=!LINE_NUMBER > PRFILE
INPUT LSREC < PRFILE
SETVAR FIRST_CHAR, STR(LSREC,21,1)
SETVAR LINE_NUMBER, LINE_NUMBER + 1
ENDWHILE
SETVAR LSREC, RTRIM(STR(LSREC,02,10)," ") + ".OUT.HPSPOOL"
PRINT !LSREC;START=!LINE;PAGE=!PAGELEN;!PARM
DELETEVAR FIRST_CHAR, LINE_NUMBER, LSREC
PURGE LSFILE,TEMP
PURGE PRFILE,TEMP
ENDIF
RETURN
ENDIF
IF NOT FINFO("!FILE",0) THEN
ECHO NONEXISTENT PERMANENT FILE: !FILE
RETURN
ENDIF
PRINT !FILE;START=!LINE;PAGE=!PAGELEN;!PARM
--------------------------------------------------------------------------
My mind is my own, as are my ideas and opinions.
My heart, body, and soul, however, all belong to others. Tim.
--------------------------------------------------------------------------
|