我对批处理文件有疑问
所以在这个目录中,让我们说C:\ temp \ 我有两个项目,一个是文件夹,另一个是名为“list.txt”的文本文件
如何找到文件夹的名称?
由于
答案 0 :(得分:4)
如果您只想列出当前目录的子目录:
dir /ad /b
如果您在另一个目录中,您可以这样做:
dir c:\temp /ad /b
/ad
表示列出属性为“目录”的所有项目,/b
为裸格式
更新:
如下面Bill所述,您可以遍历dir cmd的输出并设置环境变量。这里的缺陷是,如果有多个子文件夹,你将不知道哪一个将是“最后一个”。下面是一个按名称(/ on)对目录进行排序并将环境变量MY_ENV_VAR设置为最后一个子文件夹名称的示例:
for /f "delims=" %%a in ('dir "c:\temp" /on /ad /b') do @set MY_ENV_VAR=%%a
顺便说一句,如果您要进行更多的脚本编程,您可能需要花一些时间在一些PowerShell基础知识上,这样可以为您提供更多的编程控制。
Get-ChildItem | where {$_.PSIsContainer}
我发现批量脚本在一段时间后会令人沮丧。
答案 1 :(得分:2)
试试这个:
for /d /r "C:\temp" %%i in (*.*) do echo %%~i