Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 批处理文件以将文件夹中的文件夹列表到一个级别_Batch File - Fatal编程技术网

Batch file 批处理文件以将文件夹中的文件夹列表到一个级别

Batch file 批处理文件以将文件夹中的文件夹列表到一个级别,batch-file,Batch File,我搜索了又搜索,但没有结果,因此如果答案确实存在,我深表歉意 我不太擅长批处理文件,所以请记住这一点 我想要的只是一个批处理文件,它将列出/保存当前文件夹中的文件夹列表 因此,基本上,如果我在某个文件夹中运行此批处理文件,它将输出运行批处理文件的文件夹中的所有文件夹(不是文件或子文件夹,只是到一个级别) 我想这可能是一个简单的请求,但我在谷歌等网站上没有任何运气。Dir 使用dir命令。输入帮助和选项 dir /a:d /b 重新使用 然后使用重定向将列表保存到文件中 > list.t

我搜索了又搜索,但没有结果,因此如果答案确实存在,我深表歉意

我不太擅长批处理文件,所以请记住这一点

我想要的只是一个批处理文件,它将列出/保存当前文件夹中的文件夹列表

因此,基本上,如果我在某个文件夹中运行此批处理文件,它将输出运行批处理文件的文件夹中的所有文件夹(不是文件或子文件夹,只是到一个级别)

我想这可能是一个简单的请求,但我在谷歌等网站上没有任何运气。

Dir 使用
dir
命令。输入帮助和选项

dir /a:d /b

重新使用 然后使用重定向将列表保存到文件中

> list.txt

在一起 这将只输出目录的名称。如果您想要目录的完整路径,请使用下面的内容


全路径
可供替代的 其他方法仅使用
for
命令。有关帮助和选项,请参见
获取/?
。这可以只输出名称
%%~nxD
或完整路径
%%~fD

for /d %%D in (*) do echo %%~fD

笔记 要在命令行中直接使用这些命令,请将双百分号更改为单百分号<代码>%%至
%%

要重定向方法的
,只需在echo语句之后添加重定向。使用双箭头
>>
重定向此处以附加到文件,否则由于覆盖所有其他语句,只有最后一条语句将写入文件

... echo %%~fD>> list.txt

打印保存批处理脚本文件的所有文件夹名称

for /d %%d in (*.*) do (
    set test=%%d
    echo !test!
)
pause

我尝试使用此命令来显示目录中的文件列表

dir/s/b>List.txt

在该文件中,它显示以下列表

C:\ProgramFiles(x86)\Cisco Systems\Cisco Jabber\XmppMgr.dll

C:\ProgramFiles(x86)\Cisco Systems\Cisco Jabber\XmppSDK.dll

C:\Program Files(x86)\Cisco Systems\Cisco Jabber\accessories\Plantronics

C:\Program Files(x86)\Cisco Systems\Cisco Jabber\accessories\SennheiserJabberPlugin.dll

C:\Program Files(x86)\Cisco Systems\Cisco Jabber\accessories\Logitech\LogiUCPluginForCisco

C:\Program Files(x86)\Cisco Systems\Cisco Jabber\accessories\Logitech\LogiUCPluginForCisco\lucpcisco.dll

我们要做的只是显示子目录,而不是完整的目录路径

就这样,

Cisco Jabber\XmppMgr.dll Cisco Jabber\XmppSDK.dll

Cisco Jabber\accessories\JabraJabberPlugin.dll

Cisco Jabber\accessories\Logitech

Cisco Jabber\accessories\Plantronics

Cisco Jabber\accessories\SennheiserJabberPlugin.dll


好的,我有以下内容:对于(*)中的/D%%A,请执行echo%%A>>output.txt,但结果似乎是按日期顺序排列的。如何按名称排序。不幸的是,为了方便地对结果进行排序,您需要使用
dir
命令。唯一的其他选项是使用
sort
命令。将
/o:n
参数添加到
dir
命令中。有关所有选项,请参见
dir/?
。下面是更新的两个
dir
命令
dir/a:d/b/o:n>output.txt
for/f“delims=“%%d in('dir/a:d/b/o:n')执行echo%%~fD>>output.txt
... echo %%~fD>> list.txt
for /d %%d in (*.*) do (
    set test=%%d
    echo !test!
)
pause