我是批处理脚本的新手。我试图要求用户从名为camera.txt的文本文件的第一行输入一个已知变量。
camera.txt包含:
cam52 http://192.168.101.52/reboot.cgi?delay=555
cam53 http://192.168.101.53/reboot.cgi?delay=555
如果用户输入 cam52 ,它将继续以第二行的值启动IE " 文本文件中的第二列"
到目前为止,我有以下内容,但不确定我是否在正确的道路上......
@echo off
Title Input Camera and Reboot
ECHO input camera to restart
......?
FOR /f "tokens=2 delims= " %%b IN (camera.txt) DO ECHO Launching Internet Explorer with camera URL %%b
Start "" "%ProgramFiles%\Internet Explorer\iexplore.exe" "%%b"
我该怎么做?
答案 0 :(得分:1)
让我们从获取用户输入开始。
来自In Windows cmd, how do I prompt for user input and use the result in another command?
set /p id="Enter ID: "
其次,循环浏览文件。
你已经明白了这一点。荣誉。但是,我们需要得到两条线。 tokens=2
将获得第二部分(URL)。所以我们会稍微改变一下......
FOR /f "tokens=1,2 delims= " %%a IN (camera.txt) DO
有关详细信息,请参阅http://ss64.com/nt/for_f.html。
第三,比较。
IF %ERRORLEVEL% EQU 2 goto sub_problem2
第四,打开页面/浏览器
来自另一个问题:Open a Web Page in a Windows Batch FIle
start "" http://www.stackoverflow.com
<强>摘要强>
所以,如果我们将所有这些加在一起,我们会得到这样的结果:
@echo off
REM Title Input Camera and Reboot
set /p cam="input camera to restart: "
FOR /f "tokens=1,2 delims= " %%a IN (camera.txt) DO (
if %%a EQU %cam% (
ECHO Launching Internet Explorer with camera URL %%b
start "" %%b
)
)