我可以使用通配符来表示子目录而不是仅表示 Windows 命令提示符中的文件吗?

我可以使用通配符来表示子目录而不是仅表示 Windows 命令提示符中的文件吗?

我知道我可以使用通配符来列出文件在一个目录中:

dir *.java

但是,有人知道是否也可以用通配符来表示子目录吗?

我想做类似的事情

dir classes/*/*.java

其中,它将列出 classes 目录下每个子目录中的所有 java 文件。

因此,如果有:

课程/cs1100/
课程/cs1200/
课程/cs1500/

它将列出其中的所有 java 文件。

请注意,我并不是专门将其用于“Dir”命令,而是用于另一个接受文件列表的命令行工具。但是,如果它适用于 Dir,那么它也应该适用于我的其他程序。

答案1

您可以使用dir /s *.java

dir /?

/S 显示指定目录及其所有子目录中的文件。

您可能希望将它与/b以下标志结合起来:

/B 使用裸格式(没有标题信息或摘要)。

否则,您将获得每个子文件夹的摘要和标题,而不仅仅是文件列表。

答案2

我会按照如下方式进行操作:

打开命令提示符,导航到 classes 目录,这样当前目录实际上位于 classes 中,然后输入以下命令:

dir /S *.java

/S 选项将告诉它递归所有子目录。这在 中肯定有效dir。我无法说它将如何移植到您正在使用的其他工具中。

相关内容