On Thu, 15 Aug 2002 08:30:46 -0400, modalto
<[log in to unmask]> wrote:
Here are a few mods thanks to Hans for the suggestions.
1. send the purge stdout to the abyss
2. removed prsp, which was just a basic print spool file udc
* note: This command file will always print the most recent spool
file. So if your company is like ours and is a bit lackadasical
about saving off spool files, when you do your showout job=j123 it
shows two stdlist spoolfiles. My script will always print the one
with the largest dfid #.
Have fun with it.
-------------- begin cut ---------------------
parm jobnum xtra="+"
purge ewtmp,temp > $null
build ewtmp;disc=100;rec=-256,,v,ascii;nocctl;temp;msg
showout job=j!jobnum > ewtmp
setvar _found 0
setvar _beg 0
setvar _end 0
setvar _atend 0
setvar _afound 0
setvar _bfound 0
setvar _lastdfid 9999
while finfo("ewtmp","eof") > 0 and _found = 0 do
input _rec < ewtmp
setvar _len len("!_rec")
setvar _tmpstr pos("#O", "!_rec")
if !_tmpstr > 0
setvar _afound 1
setvar _beg ( !_tmpstr + 2 )
endif
setvar _stdlist pos("STDLIST", "!_rec")
if !_stdlist > 0
setvar _jline pos("#J", "!_rec")
setvar _bfound 1
setvar _end ( !_stdlist - !_jline )
endif
setvar _displayed pos("DISPLAYED", "!_rec")
if !_displayed > 0
setvar _atend 1
endif
if !_bfound = 1 and !_afound = 1 and !_atend = 1
setvar _found 1
endif
if !_stdlist > 0
setvar _dfid str("!_rec", !_beg, !_end)
if _lastdfid = 9999
setvar _lastdfid ( !_dfid )
else
if !_dfid > !_lastdfid
setvar _lastdfid ( !_dfid )
endif
endif
endif
endwhile
if "!xtra" = "-"
setvar _dfid ( "!_dfid" + ";-22" )
endif
if "!_dfid" <> ""
setvar _dtemp ("o" + rtrim("!_dfid") + ".out.hpspool")
print !_dtemp
else
echo *** Job Not Found, Probably on a wait ***
endif
deletevar _@
--------------- end cut -------------------------
>parm jobnum xtra="+"
>purge ewtmp,temp
>build ewtmp;disc=100;rec=-256,,v,ascii;nocctl;temp;msg
>showout job=j!jobnum > ewtmp
>setvar _found 0
>setvar _beg 0
>setvar _end 0
>setvar _atend 0
>setvar _afound 0
>setvar _bfound 0
>setvar _lastdfid 9999
>while finfo("ewtmp","eof") > 0 and _found = 0 do
> input _rec < ewtmp
> setvar _len len("!_rec")
> setvar _tmpstr pos("#O", "!_rec")
> if !_tmpstr > 0
> setvar _afound 1
> setvar _beg ( !_tmpstr + 2 )
> endif
> setvar _stdlist pos("STDLIST", "!_rec")
> if !_stdlist > 0
> setvar _jline pos("#J", "!_rec")
> setvar _bfound 1
> setvar _end ( !_stdlist - !_jline )
> endif
> setvar _displayed pos("DISPLAYED", "!_rec")
> if !_displayed > 0
> setvar _atend 1
> endif
> if !_bfound = 1 and !_afound = 1 and !_atend = 1
> setvar _found 1
> endif
> if !_stdlist > 0
> setvar _dfid str("!_rec", !_beg, !_end)
> if _lastdfid = 9999
> setvar _lastdfid ( !_dfid )
> else
> if !_dfid > !_lastdfid
> setvar _lastdfid ( !_dfid )
> endif
> endif
> endif
>endwhile
>if "!xtra" = "-"
> setvar _dfid ( "!_dfid" + ";-22" )
>endif
>if "!_dfid" <> ""
> prsp !_dfid
>else
> echo *** Job Not Found, Probably on a wait ***
>endif
>deletevar _@
>
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *
|