我需要一个代码来查找jpg文件并获取文件存在的目录名称列表。 我编写了一个代码,找到我的代码所有文件夹
For /r %%i in (.) do ( echo %%~nf >>list1.txt
)
For /f "tokens=*" %%i in (list1.txt) do ( echo %%~nxi >>list2.txt
)
它保存了所有子文件夹的列表,但我想获取文件存在的文件夹的名称。
答案 0 :(得分:1)
您进行研究时似乎没有正确理解您所阅读的内容。举个例子。
For /r %%i in (.) do ( echo %%~nf >>list1.txt
告诉我你在某个地方见过这个%%~nf
,但你是否尝试过阅读它的作用?您提供了%%i
的变量,但是您尝试使用%%f
并且您想要路径(%%~p
),但使用名称(%%~n
)。如果您实际上从cmd for /?
运行了帮助,那么您将获得一些很棒的提示。
此:
For /r %%i in (*.jpg) do echo "%%~dpi" >>list1.txt
将提供文件的驱动器和路径,其中:
For /r %%i in (*.jpg) do echo "%%~pi" >>list1.txt
只会给出路径,而这个:
For /r %%i in (*.jpg) do echo "%%~nxi" >>list1.txt
会给出文件的名称和扩展名,最后是:
For /r %%i in (*.jgp) do echo "%%~ni" >>list1.txt
只提供没有扩展名的文件名。
所以我挑战你通过cmd为你的命令运行帮助开关,我向你保证,你会惊讶地发现你可以从中学到什么。