dir /s works in mysterious ways :(

Aug 3, 2017
11
1
Hi,

I have a simple directory structure:

I:\tmp> tree
I:\tmp
└──x
├──1
│ ├──a
│ └──b
└──2

If I enter "dir /sb" I get what I expect:

I:\tmp> dir /sb
I:\tmp\x
I:\tmp\x\1
I:\tmp\x\2
I:\tmp\x\1\a
I:\tmp\x\1\b

But when I enter "dir /sb x", it doesn't display the whole depth of the tree:

I:\tmp> dir /sb x
I:\tmp\x\1
I:\tmp\x\2

When I use "dir /sb ." I get even less:

I:\tmp> dir /sb .
I:\tmp\x

What am I not getting?

TCC 21.01.46 x64 Windows 10 [Version 10.0.15063]
TCC Build 46 Windows 10 Build 1506
 

rconn

Administrator
Staff member
May 14, 2008
12,340
149
Using TCC 21.01.49 (the current build), each of those commands in TCC returns exactly the same thing as CMD.

The question is what results you actually want to return - if you just enter "x", then TCC (and CMD) will look for files named "x". If you enter "x*", they will look for a file or directory beginning with "x".
 
Aug 3, 2017
11
1
I would assume it works the same as without the "/s". If I enter "dir x", I get the contents of dir "x", not just all files named "x". I find the "/s" bevavior rather counter-intuitive. Plus, it's not even right: "dir /sb x" doesn't show me all the files named "x", see above.

I just checked with CMD (Microsoft Windows [Version 10.0.15063]) and got this:

I:\tmp> dir /s /b x
I:\tmp\x\1
I:\tmp\x\2
I:\tmp\x\1\a
I:\tmp\x\1\b

It looks like I would like to get it, but TCC output is different.
 

rconn

Administrator
Staff member
May 14, 2008
12,340
149
First, update to the current version (21.01.49) so we're comparing the same thing.

This is what I get with TCC 21.01.49:

Code:
[F:\tmp]ver
TCC  21.01.49 x64   Windows 10 [Version 10.0.16278]

[F:\tmp]dir /s/b
F:\tmp\x
F:\tmp\x\1
F:\tmp\x\2
F:\tmp\x\1\a
F:\tmp\x\1\b

[F:\tmp]dir /s/b x
F:\tmp\x\1
F:\tmp\x\2
F:\tmp\x\1\a
F:\tmp\x\1\b

[F:\tmp]cmd
Microsoft Windows [Version 10.0.16278.1000]
(c) 2017 Microsoft Corporation. All rights reserved.

F:\tmp>dir /s /b x
F:\tmp\x\1
F:\tmp\x\2
F:\tmp\x\1\a
F:\tmp\x\1\b
F:\tmp>
 
Similar threads
Thread starter Title Forum Replies Date
E Fixed Bug with DIR /Z displaying descriptions Support 8
J Paths shown in DIR /B Support 2
K Fixed Prompt display will be shifted after use dir to display a filename with Chinese. (v25.00.28 x64) Support 18
Jesse Heines How to? How to display picture creation date with dir command Support 6
vefatica WAD DIR.BTM? Support 11
DrusTheAxe DIR reports meaningless SYMLINK information Support 14
C show file description? with dir? Support 8
vefatica DIR /F and streams? Support 7
rps Multi-column DIR /v not displaying all files. Support 5
R How to? Dir specific file search patterns with spaces in the pathnames? Support 6
rps Dir /Nfv -> Alt-F2 Support 2
rps @FILESIZE[....,a] allocated size not matching Dir results Support 8
A TCMD - Dir Command puts out blank lines? Support 16
S Problems with dir command in the debugger Support 5
M TCC incorrect dir output since Windows 1803 Support 6
x13 Problem listing repository files using DIR http(s)://... Support 8
vefatica Help nit (FFIND and DIR with /S) Support 0
N Fixed Strange dir behavior Support 6
JohnQSmith Weird DIR output (missing lines) Support 1
C 7zip with date range .vs. filelist created with dir and daterange Support 0
D Towards shared (dir-)history lists Support 3
vefatica WAD DIR /HL still gets names wrong Support 16
vefatica DIR /S /HL? Support 4
H Fixed DIR /G returns wrong sizes Support 2
nickles WAD dir.htm Support 2
vefatica DO dir in /s /a:+d /d"g:\" * ( ... ) Support 26
vefatica DIR \\.\...? Support 4
M Fixed DIR /S /B1 ignores "/S" Support 5
C tcmd.ini not loading from program dir? Support 5
D Fixed Dir /Nm:n has changed Support 1
rps How to? dir /s unexpected results Support 10
vefatica Update to current install dir? Support 8
cgunhouse Problem with "dir /=" Support 4
T dir /h error in empty directory Support 22
P WAD TC 15.0.1.58 x64 crasches with a simple dir command Support 18
CWBillow dir /4 strange Support 2
samintz WAD DIR /B1 and /X Support 2
nickles dir behaves inconsistently Support 5
vefatica DIR, streams, and wildcards? Support 1
vefatica DIR /: /u ... streams not counted? Support 7
vefatica Documentation DIR /B /S /: Support 2
samintz How to? DIR listing for exact match Support 1
dcantor WAD dir "ftp:// ..." fails in TCC 15 Support 7
T How to? dir/pdir - 2nd level down only Support 7
MikeBaas How to? DIR: supress extensions? Support 5
old coot dir /s dies on my C: drive Support 2
A WAD Dir daterange + multiple path wildcards crashes tcc Support 2
old coot TC DIR command has trouble on my SSD Support 2
M Fixed character set in dir/copy Support 3
C odd behavior of "dir" Support 0

Similar threads