如何获取jpg所在文件夹的名称?

时间:2018-05-19 15:39:30

标签: windows batch-file

我需要一个代码来查找jpg文件并获取文件存在的目录名称列表。 我编写了一个代码,找到我的代码所有文件夹

For /r %%i in (.) do ( echo %%~nf >>list1.txt
)
For /f "tokens=*" %%i in (list1.txt) do ( echo %%~nxi >>list2.txt
)

它保存了所有子文件夹的列表,但我想获取文件存在的文件夹的名称。

1 个答案:

答案 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为你的命令运行帮助开关,我向你保证,你会惊讶地发现你可以从中学到什么。