%META:TOPICINFO{author="ChrisBartram" date="1170386157" format="1.1" version="1.2"}% %META:TOPICPARENT{name="Hp3000ProgrammingFeatures"}% ---+ [[Hp3000PurgePrivFile][Purging a PRIV file on an HP3000]]
1. Use listf -3 on the file to find out the actual value of the 'PRIV'
file code.
:LISTF I0038,-3
********************
FILE: I0038.DATA....
FILE CODE : -400 FOPTIONS: BINARY,FIXED....
BLK FACTOR: 1 CREATOR : MGR
...
VOLCLASS : MPEXL_SYSTEM_VOLUME_SET:DISC
2. Issue a file equation such as:
FILE A=I0038;DEL
3. Using the following DSCOPY syntax (an error will occur but the file
will be deleted):
DSCOPY *A;$NULL;FCODE=-400
:DSCOPY *A;$NULL;FCODE=-400
Source file: I0038.DATA.....
Target file: $NULL
UNABLE TO ACCESS TARGET FILE/DEVICE. (NS/NFTERR 48)
END OF SUBSYSTEM
:LF I0@,2
LISTF I0@,2
NO FILES FOUND IN FILE-SET (CIWARN 431)
--[[PaulChristidis]]
Another suggestion: The PURGEGROUP command will purge a group (as long as you have at least AM) even if it includes PRIV files. (of course, if you have other files that you *DON'T* want purged in that group, you'll have to copy them to a group temporarily).
--[[GeoffHarper]]
:FILE T=$NULL
:STORE privfilename;*t;SHOW;PURGE
This works on 5.0. For 4.0 or earlier, I believe you cannot use a NULL file equation for the tape. It should work if you use a real (or is it reel) tape.
In either case, you will need the appropriate capability to store PRIV files (i.e. OP or PM).
Alternatively, you can run !FSCHECK.MPEXL.TELESUP and use the PURGEFILE command.
--[[GillesSchipper]]
for 4.0, simply add ;TRANSPORT to the :STORE command. CMSTORE has always supported storing to $NULL. It's just NMSTORE/TURBOSTORE that didn't support it until 5.0.
Of course if it is a big file, you probably have to wait a while as it writes all the data out to $NULL before purging your file.
--[[GavinScott]]
-- Main.ChrisBartram - 09 Jun 2006