免责声明:我不打算上班,我的代码阅读能力是初学者水平
我找到了一个有用的脚本,可以从初始脚本中打开多个选项卡(在Chrome中)。我也想打开多个应用程序(示例具有OneNote和Outlook)。 *此调用的“ list.txt”文件仅包含四个不同的网址。
@echo off
setlocal enableextensions
set num=4
for /l %%i in (1,1,%num%) do call :start
endlocal
goto :eof
:start
set /p URL=<list.txt
start "" "%URL%"
more +1 list.txt | findstr /r /v "^$" > tmp_list.txt
echo.%URL%>>tmp_list.txt
del list.txt
ren tmp_list.txt list.txt
cd "C:\Program Files (x86)\Microsoft Office\root\Office16\ONENOTE.EXE"
start ONENOTE.EXE
cd "C:\Program Files (x86)\Microsoft Office\root\Office16\OUTLOOK.EXE"
start OUTLOOK.EXE
goto :eof
我想我了解浏览器选项卡代码的工作方式,但是我怀疑该逻辑会干扰打开Outlook和OneNote,因此每次我运行此脚本时,都会打开多个Outlook和OneNote实例。
我们非常感谢您的帮助,因为尝试自动执行重复的管理工作始终是一个好主意。
答案 0 :(得分:0)
@echo off
setlocal enableextensions
set "num=4"
( for /l %%i in (1, 1, %num%) do call :start ) < list.txt
cd /d "C:\Program Files (x86)\Microsoft Office\root\Office16"
start ONENOTE.EXE
start OUTLOOK.EXE
endlocal
exit /b
:start
set /p "URL="
start "" "%URL%"
exit /b
如果将for
循环括在圆括号中,并将stdin括在list.txt中,
然后文件句柄保持打开状态,以便读取4行中的每一行
按顺序。
您发布的代码在每个循环中都会重新打开文件句柄,因此您可以
每次通话都读取第一行。
摘要:
for
循环从list.txt读取4行。
call :start
接受其中set /p "URL="
所在行的标准输入
将行存储在名为URL
的变量中。 start
打开
值%URL%
。呼叫将返回到从呼叫的线路
并会再次循环。
循环完成后,将执行Onenote,然后执行Outlook。