根据文件列表创建bat文件

时间:2015-05-16 23:31:33

标签: list file batch-file

我需要根据文件列表创建一个bat文件。

文件列表示例(文件名称可以更改):

vpn_1.1.1.1_udp_11111.ovpn
vpn_2.2.2.2_tcp_22222.ovpn
vpn_3.3.3.3_udp_33333.ovpn
vpn_10.10.10.10_tcp_1010.ovpn

我需要一个可以根据文件列表创建完整代码的蝙蝠,如:

start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect vpn_1.1.1.1_udp_11111.ovpn
ping -n 10 localhost >nul 2>&1
taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe

start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect vpn_2.2.2.2_tcp_22222.ovpn
ping -n 10 localhost >nul 2>&1
taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe

start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect vpn_3.3.3.3_udp_33333.ovpn
ping -n 10 localhost >nul 2>&1
taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe

start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect vpn_10.10.10.10_tcp_1010.ovpn
ping -n 10 localhost >nul 2>&1
taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe

创建代码后,我需要将蝙蝠保存在首选路径中。

可以更改数字和文件名称(在本例中我写了4个文件,但文件可以更多)

实际上为我提供的所有解决方案都不起作用(不识别文件的路径),U继续搜索我的批处理文件的工作解决方案。

你能帮我吗?

感谢您的支持

祝你好运

2 个答案:

答案 0 :(得分:1)

container.RegisterType<IMenuRepository, MenuRepository>(new PerThreadLifetimeManager(), new InjectionConstructor(typeof(IMonopolyEntitiesDbContext), typeof(IList<MenuLink>)));

编辑回复评论

我用你提供的数据测试了我的程序。这是我在测试中使用的 filesList.txt 文件:

@echo off

(for /F "delims=" %%a in (filesList.txt) do (
   echo start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect %%a
   echo ping -n 10 localhost ^>nul 2^>^&1
   echo taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe
   echo/
)) > "prefered\path\created.bat"

这是 created.bat 文件:

vpn_1.1.1.1_udp_11111.ovpn
vpn_2.2.2.2_tcp_22222.ovpn
vpn_3.3.3.3_udp_33333.ovpn
vpn_10.10.10.10_tcp_1010.ovpn

创建的.bat文件包含上面作为请求输出发布的完全相同的代码,因此我不了解您的问题... start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect vpn_1.1.1.1_udp_11111.ovpn ping -n 10 localhost >nul 2>&1 taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect vpn_2.2.2.2_tcp_22222.ovpn ping -n 10 localhost >nul 2>&1 taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect vpn_3.3.3.3_udp_33333.ovpn ping -n 10 localhost >nul 2>&1 taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect vpn_10.10.10.10_tcp_1010.ovpn ping -n 10 localhost >nul 2>&1 taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe

重要:为了拥有一个共同的基础,你必须做同样的事情,即复制&#34;文件列表示例&#34;在上面并将其粘贴到名为filesList.txt的文件中,将我的程序复制到.bat文件中并运行它。然后,将created.bat文件与您在上面发布的请求代码进行比较。您必须在发布的任何进一步评论中确认您已完成此测试...

答案 1 :(得分:0)

简单:

for /f "delims=" %%a in (textfilecontainingyourovpnfilenames) do (
 start /low /max "" "D:\Programmi Installati\Openvpn Portable\OpenVPNPortable.exe" --connect %%a
 timeout /t 10 >nul
 taskkill.exe /F /IM openvpn.exe /IM openvpn-gui.exe /IM OpenVPNPortable.exe
)

即,从文本文件中读取每一行,然后运行该过程。

请注意,超时将提供10秒延迟和>nul抑制timeout倒计时提示。