Batch file 如何在批处理文件中列出文件夹中的所有.bat文件?
如何在包含文件夹中的文件夹以及这些文件夹中的程序的ArrayList中创建ArrayList 像这样: ArrayListBatch file 如何在批处理文件中列出文件夹中的所有.bat文件?,batch-file,Batch File,如何在包含文件夹中的文件夹以及这些文件夹中的程序的ArrayList中创建ArrayList 像这样: ArrayList 插件文件夹中的文件夹 这些文件夹中的所有批处理文件 编辑: 我想列出以下内容: program/plugins/vlams/plugin1.bat program/plugins/vlams/plugin2.bat 因此: vlams提供的插件 -plugin1 -plugin2试试这个: @echo off pushd C:\...\program\plugins\ ::
插件
文件夹中的文件夹
这些文件夹中的所有批处理文件
编辑:
我想列出以下内容:
program/plugins/vlams/plugin1.bat
program/plugins/vlams/plugin2.bat
因此:
vlams提供的插件
-plugin1
-plugin2
试试这个:
@echo off
pushd C:\...\program\plugins\
:: Edit Above Path Path
for /d %%a in (*) do (
Echo Plugins by %%a
for /r "%%~a" %%b in (*.bat) do (
Echo - %%~nb
)
Echo.
)
popd
如果插件的内容是:
Plugins
> Vlams
> plugin1.bat
> plugin2.bat
> George
> plugin1.bat
> ReadMe.txt
输出将是:
Plugins by Vlams
- plugin1
- plugin2
Plugins by George
- plugin1
我相信这就是你想要的。格式化代码不应该是一个太大的问题
如果您想对它们执行除“Echo”以外的操作,只需更换:
Echo - %%~nb
无论您想要什么,其中
%%a
指的是作者(文件夹名称),%%b
指的是bat文件的名称。批处理文件中没有ArrayList,因此也无法在ArrayList中创建ArrayList。在批处理文件中,您尝试执行的操作将有点困难;你被限制使用批处理文件有什么特别的原因吗?我并不是真的被限制使用批处理文件,但在干净的windows PC上没有其他语言可以很容易地编码,而且我对python和java的了解还不够,所以我无法做到这一点。@KenWhite-这不是很难,你最终只是制作了一个类似arraylike而不是实际的数组。您将有一组变量,称为文件夹[1]、文件夹[2]、文件夹[3]等,但它们实际上没有任何关联。谢谢,但有一个问题,我该怎么做才能让你输入某人插件的名称,然后它通过调用启动它?也许可以创建一个包含所有现有插件的TMP文件夹,当你完成后,它会再次删除它。我发现了一个小缺点,我只是搜索了pushd的语法,它的使用方式并不明智,因为这将是一个供人们使用的程序,我不希望人们每次更新时都要更改目录。首先需要打开批处理文件所在的文件夹,然后执行pushd插件