我正在尝试编写一个批处理文件来自动重启我在服务器上的一些IP摄像机。
我已成功获得一个批处理文件,通过ftp重新启动一个摄像头,但我无法理解如何为该范围内的每个ip执行此操作。
我目前有:
open IP
user
pass
quote site reboot
quote site reboot
quit
echo
保存在.txt文件(ftp.txt)中,我使用.bat文件调用它:
@echo off
set user = Username
set pass = Password
ftp -s:ftp.txt
我想要一个使用的ip地址列表,然后让bat脚本逐个执行重启,并等待2分钟再转移到下一个。
我想我需要将列表放在.txt文件中,在bat中使用for循环。
类似
set ip = iplist(??) <-- Part causing confusion
for each ip in ftp.txt
open ip
user
pass
quote site reboot
quote site reboot
pause 2 min
quit
非常感谢任何帮助!
答案 0 :(得分:3)
以下是我的表现:
将所有相机 IP 存储在名为 cameras.txt 的文件中(一个 IP 每行)
将批处理文件( script.bat )修改为:
@echo off
for /F %%f in (cameras.txt) do (
ftp -s:ftp.txt %%f
)
open IP
)发布其他文件内容。
cameras.txt :
mirrors.kernel.org
ftp.kr.freebsd.org
ftp.txt :
anonymous
pass
quote site reboot
quote site reboot
quit
echo
<强>输出强>:
e:\Work\Dev\StackOverflow\q045327836>script.bat Connected to mirrors.pdx.kernel.org. 220 Welcome to mirrors.kernel.org. 200 Always in UTF8 mode. User (mirrors.pdx.kernel.org:(none)): 331 Please specify the password. 230 Login successful. ftp> quote site reboot 550 Permission denied. ftp> quote site reboot 550 Permission denied. ftp> quit 221 Goodbye. Connected to daemon.kr.freebsd.org. 220 daemon.kr.freebsd.org FTP server (Version 6.00LS) ready. 500 OPTS UTF8 ON: command not understood. User (daemon.kr.freebsd.org:(none)): 331 Guest login ok, send your email address as password. 230 Guest login ok, access restrictions apply. ftp> quote site reboot 500 SITE REBOOT: command not understood. ftp> quote site reboot 500 SITE REBOOT: command not understood. ftp> quit 221 Goodbye.
我认为这是你追求的目标。