使用shell脚本或bat脚本了解文件夹内的文件夹的所有路径

时间:2015-08-10 10:51:55

标签: windows shell batch-file git-bash

我在桌面上有一个名为A的目录。

它具有以下层次结构:

A -> B -> C -> D

A -> Q -> W -> X -> D

A -> S -> D -> F

以上都是目录名称。我想知道目录D中是否有名为A的目录。在确保D存在之后,我想知道从目录AD的完整路径。

有人在这方面帮助我。

3 个答案:

答案 0 :(得分:1)

在A中使用find: Unix的

find . -name "D" -type d

dir A /AD /S

答案 1 :(得分:0)

我对git-bash一无所知。

看起来很疯狂,本机批处理没有直接列出特定文件夹名称的所有位置的方法。除非DIR命令包含通配符,否则DIR将查找指定文件夹中的文件或文件夹,而不是列出文件夹名称本身。

解决方案是将结果传递给FINDSTR

dir /s /b /ad A | findstr /irc:"[\\]D$"

如果将目标文件夹名称添加到DIR命令,并且附加了通配符,则可以优化性能:

dir /s /b /ad A\D? | findstr /irc:"[\\]D$"

答案 2 :(得分:-1)

不确定这是不是你的意思,但是......

....设置......

user@machine ~:$ mkdir tmp
user@machine ~:$ cd tmp
user@machine ~/tmp:$ mkdir -p A/B/C/D
user@machine ~/tmp:$ mkdir -p A/Q/W/X/D
user@machine ~/tmp:$ mkdir -p A/S/D/F

...找到命令......

user@machine ~/tmp:$ find ./ -type d -name 'D'
./A/B/C/D
./A/S/D
./A/Q/W/X/D
user@machine ~/tmp:$