Actually, I'd say that's better behavior than I get from a command line
in windows 10.
When I create the structure you showed below, I do indeed get all the
files/directories (made them all directories except the .asm files),
then I get output equivalent to your first listing.
When I change q4 to q, and run it again, I get the second listing
(twice) with a file not found error between the two listings.
(very odd).
So, I think that freedos handles it better than MSDOS does, so I'd have
to call this one expected behavior.
Interesting enough though, if I do the DIR Q4 /S /B, after renaming Q to
Q4, I do indeed get the whole structure as expected, so not sure what's
going on there. Perhaps it's a problem with single letter nested
directory names?
On 6/3/2024 3:05 PM, h...@iafrica.com wrote:
The point I am trying to make is about the unexpected behaviour of the
DIR command and that is if a directory exists with the same name as
the file one is searching for, the directory listing is terminated
early without error.
In my example, if the Q directory is renamed to Q4 and the command
"DIR Q /S /B " issued, all occurrences of Q file are found.
Eg.
f:\a12\Q.A
f:\a12\j\Q
f:\a12\q.a\Q
f:\a12\q.a\Q.A
f:\a12\q1\Q
f:\a12\q1\Q.A
f:\a12\q4\Q
f:\a12\q4\Q.A
f:\a12\q4\Q.ASM
f:\a12\ts\Q
f:\a12\ts\Q.A
f:\a12\ts\Q.ASM
With the Q directory in place and issuing the command "DIR Q /S /B ",
only files in the Q directory are displayed.
Eg.
f:\a12\q\Q
f:\a12\q\Q.A
f:\a12\q\Q.ASM
f:\a12\q\Q1
f:\a12\q\Q12
I suspect that if there are deeper levels of directories and Q files
are at levels prior to the Q directory, these Q files will be
displayed until the Q directory is encountered and the then listing
will stop. Further Q files will not be found/ displayed. I have not
verified this.
Is this expected behaviour, an anomaly or a bug?
On 2024/06/03 15:10, tsie...@softcon.com wrote:
Regardless of whether they're files or directories, if there is no
file extension, then don't put on the second star, just a *. will do
the search for you. By placing the second star, you're making the os
search for extensions by default. Leave it out, and it will search
for just files w/o them. I only said before that typically
directories don't have extensions, so that's an easy way to find
them. but in your case, The same thing applies for files without
extensions.
On 6/3/2024 6:19 AM, h...@iafrica.com wrote:
Hi
I am looking for files named Q and not directories named Q. In my
case I have thousands of assembler text files without filename
extensions. It comes from early days starting out with TSC Flex and
Uniflex followed by the Mark Williams Coherent operating systems.
John
On 2024/06/02 22:29, tsie...@softcon.com wrote:
Don't know if it helps, but I've found that if you want *just*
directory names, and you don't have a directory program that allows
you to set flags, so it only shows directories, then the best way
to get them is to do something like:
dir *.
Since most directory names don't have extensions, this only picks
out the directory names (and of course, any files without
extensions, but those are rare), so that should find the q
directory for you with little to no trouble.
On 6/2/2024 5:34 PM, hms--- via Freedos-user wrote:
Hi All
It appears that if a directory exists with the same name as the
file one is searching for, the directory listing is terminated
early without error.
I was searching for a files named "Q" with no extension. I used
the commands "DIR Q /S /B" and "DIR Q. /S /B", but it only
revealed files in a directory named "Q".
An example directory structure is shown below. Note that most of
the file names below do not have extensions. The file named "Q"
appears in all the subdirectories.
I was puzzled and decided to dig a little further. Is this correct
behaviour for the DIR command or a misunderstanding on my part
about file name matching? Perhaps an anomaly or a bug? I have
tried various DOS's with the same result, the DIR command being an
internal one. I have also tried XCOPY and XXCOPY with the "/L"
option and it also only finds the files in the "Q" directory. Any
thoughts as to what's going on?
John
Directory of f:\a12\*.*
[.] [..] [J] [Q] [Q.A]
[Q1] [TS]
Directory of f:\a12\j\*.*
[.] [..] Q
Directory of f:\a12\q\*.*
[.] [..] Q Q.A Q.ASM
Q1 Q12
Directory of f:\a12\q.a\*.*
[.] [..] Q Q.A
Directory of f:\a12\q1\*.*
[.] [..] Q Q.A Q99
Directory of f:\a12\ts\*.*
[.] [..] Q Q.A Q.ASM
Entering the command below gives the following result.
F:\>DIR Q /S /B
f:\a12\q\Q
f:\a12\q\Q.A
f:\a12\q\Q.ASM
f:\a12\q\Q1
f:\a12\q\Q12
The Q file is only found in the Q directory.
Same result as above with:-
F:\>DIR Q. /S /B
Typing command:
F:\>DIR Q.? /S /B
Gives this result.
f:\a12\Q
f:\a12\Q.A
f:\a12\j\Q
f:\a12\q\Q
f:\a12\q\Q.A
f:\a12\q.a\Q
f:\a12\q.a\Q.A
f:\a12\q1\Q
f:\a12\q1\Q.A
f:\a12\ts\Q
f:\a12\ts\Q.A
The Q file is now found in all the subdirectories.
_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user
_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user