[Info-vax] bug with DIRECTORY and search lists
AEF
spamsink2001 at yahoo.com
Tue Nov 17 14:23:11 EST 2009
On Nov 16, 10:32 pm, AEF <spamsink2... at yahoo.com> wrote:
> On Nov 16, 5:33 pm, hel... at astro.multiCLOTHESvax.de (Phillip Helbig---
>
> undress to reply) wrote:
> > In article
> > <a22d5e50-e880-425b-9c93-252e27fa4... at g23g2000yqh.googlegroups.com>, AEF
>
> > <spamsink2... at yahoo.com> writes:
> > > What's happening here is that RMS is doing sticky defaults. Since BBB
> > > is missing disk, filename, and type fields, RMS matches all possible
> > > values of SYS$DISK from the previous file-spec, AAA.
>
> > That might be assumed from the example above, but I first saw the
> > command with logicals which were defined as DISK:[DIR], so each logical
> > name was a full path.
>
> It does this if *any* field (including name, type, and version number)
> is left blank or contains an asterisk. It also supplies the other
> missing components, but the doubling effect comes from SYS$DISK being
> a search list.
>
>
>
> > > $ DIRECTORY GETTYSBURG:SPEECH.TXT;*
>
> > > Directory DISK1:[JONES.HISTORY]
>
> > > SPEECH.TXT;2 SPEECH.TXT;1
>
> > > Total of 2 files.
>
> > > Directory DISK1:[JONES.WORKFILES]
>
> > > SPEECH.TXT;1
>
> > > Total of 1 file.
>
> > > Grand total of 2 directories, 3 files.
>
> > OK, but I had two ;1 in the same directory.
>
> That's the same effect, but with a different scenario. To produce an
> exhaustive set of examples would be quite exhausting. (BTW, add /FILE
> to your DIRECTORY commands just to be sure of what's going on.)
>
> Trust me: Move on.
>
> AEF
Sorry, the example you quoted is not this effect, as you said. But the
effect *is* mentioned in the last part of the section:
[begin quote]
When you enter a search list (for example, using the DIRECTORY
command), the operating system uses elements in one part of the list
to supply parts of the file specification that are omitted from other
parts of the list. If a file specification is not complete (as shown
by SYS$LOGIN in the following example), command lines can produce
multiple files and file-not-found conditions:
$ DIRECTORY SYS$MANAGER:LOGIN.COM,SYS$LOGIN
You can avoid producing multiple files and file-not-found conditions
by placing a semicolon after the file specification, as shown:
$ DIRECTORY SYS$MANAGER:LOGIN.COM;,SYS$LOGIN
[end quote]
The actual output is not provided. I suggest running the above
commands with /FILE added. You will then see the same effect.
As before:
Take note and move on.
AEF
More information about the Info-vax
mailing list