home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / os / vms / 17898 < prev    next >
Encoding:
Internet Message Format  |  1992-11-13  |  5.3 KB

  1. Path: sparky!uunet!europa.asd.contel.com!darwin.sura.net!zaphod.mps.ohio-state.edu!sdd.hp.com!cs.utexas.edu!sun-barr!ames!elroy.jpl.nasa.gov!nntp-server.caltech.edu!SOL1.GPS.CALTECH.EDU!CARL
  2. From: carl@SOL1.GPS.CALTECH.EDU (Carl J Lydick)
  3. Newsgroups: comp.os.vms
  4. Subject: Re: File Management utility
  5. Date: 13 Nov 1992 06:49:42 GMT
  6. Organization: HST Wide Field/Planetary Camera
  7. Lines: 97
  8. Distribution: world
  9. Message-ID: <1dvj66INN11u@gap.caltech.edu>
  10. References: <01GR2LTWD6SI000TNW@ACAD.DRAKE.EDU>
  11. Reply-To: carl@SOL1.GPS.CALTECH.EDU
  12. NNTP-Posting-Host: sol1.gps.caltech.edu
  13.  
  14. In article <01GR2LTWD6SI000TNW@ACAD.DRAKE.EDU>, SK0001@ACAD.DRAKE.EDU (Sal Kabalani) writes:
  15. >1- I loaded a FOO.DIR file into TPU and looked at it. It contains all the
  16. >   filenames in the directory FOO, plus some other information. I am assuming
  17. >   this information is date/time, size, location on disk, etc. for each file in
  18. >   that directory.
  19.  
  20. Your assumption is nowhere near correct.  You really DON'T want to try to
  21. manipulate directory entries yourself.  Use the system services or library
  22. routines to do it.  That's the documented, reliable and supported way to do it.
  23. However, just for the sake of completeness, here's a description of a record in
  24. a directory file:
  25.  
  26.           |---------------------------------------|
  27.           |           Record Byte Count           |
  28.           |---------------------------------------|
  29.           |             Version Limit             |
  30.           |-------------------|-------------------|
  31.           |  Name Byte Count  |       Flags       |
  32.           |-------------------|-------------------|
  33.           |                                       |
  34.           |                                       |
  35.           |                                       |
  36.           |           File Name String            |
  37.           |                                       |
  38.           |                                       |
  39.           |                                       |
  40.           |---------------------------------------|
  41.           |                                       |
  42.           |                                       |
  43.           |              Value Field              |
  44.           |                                       |
  45.           |                                       |
  46.           |---------------------------------------|
  47.  
  48.  
  49.  
  50. Count     This two byte field is  the  standard  byte  count
  51.           field of a variable length record.
  52.  
  53. Limit     This word contains the maximum number of  versions
  54.           that  are  to  be retained for this name and type.
  55.           An attempt to enter more versions than  the  limit
  56.           will  result  in  the deletion of the least recent
  57.           version, or an error return, at  the  implementing
  58.           system's option.
  59.  
  60. Flags     This byte contains the type code of the  directory
  61.           entry  and  assorted flags bits.  The type code is
  62.           contained in the three low bits of the flags byte.
  63.           It is always
  64.  
  65.           DV.FID    The value field is  a  list  of  version
  66.                     numbers and 48 bit File ID's.
  67.  
  68.           The following flag bits are defined:
  69.  
  70.           DV.PRV    Set if the  preceding  directory  record
  71.                     contains  the same name and type as this
  72.                     one.
  73.           DV.NXV    Set if the next  directory  record  con-
  74.                     tains  the  same  name  and type as this
  75.                     one.
  76.  
  77. Name      This field contains the  file  name  and  type  in
  78.           ASCII,  separated  by  a  dot.  The dot is present
  79.           even if either name, or type, or both,  are  null.
  80.           Only  upper case alphabetic and numeric characters
  81.           may be present in  the  name  and  type.   If  the
  82.           length  of  the  name  is odd, it is padded with a
  83.           single null.
  84.  
  85. Value     This field contains the "value" of  the  directory
  86.           entry;  i.e., the information returned to the user
  87.           from a lookup operation. The value field is a list
  88.           of version numbers and  corresponding  file  ID's,
  89.           appearing  in  descending order by version number.
  90.           The  number of entries in the list is deduced from
  91.           the record byte count.  The version  number  is  a 
  92.           signed  word in the range 1-32767.  The file ID is
  93.           a set of three words which  together  specify  the
  94.           file header in INDEXF.SYS associated with a file.
  95.  
  96. >2- I dont want to re-invent the wheel. I there is such a utility that does what
  97. >   I need, I would like to consider it, instead of writing my own. Does anyone
  98. >   know if such a utility exists ? I would still like to know the FOO.DIR
  99. >   record format, for educational purposes, if nothing else.
  100.  
  101. Well, if you've got the RSX-11 layered product, you COULD use PIP.  What's
  102. wrong with the DCL commands you already mentioned?
  103. --------------------------------------------------------------------------------
  104. Carl J Lydick | INTERnet: CARL@SOL1.GPS.CALTECH.EDU | NSI/HEPnet: SOL1::CARL
  105.  
  106. Disclaimer:  Hey, I understand VAXen and VMS.  That's what I get paid for.  My
  107. understanding of astronomy is purely at the amateur level (or below).  So
  108. unless what I'm saying is directly related to VAX/VMS, don't hold me or my
  109. organization responsible for it.  If it IS related to VAX/VMS, you can try to
  110. hold me responsible for it, but my organization had nothing to do with it.
  111.