目前大概是這樣 但是搞不懂
1.要怎樣讓迴圈改變IP 並重複執行
2.IP的部分也可以設定迴圈嗎??
rem =====變數IP設定=====
set ip=192.168.164.1
set ip=192.168.164.2
set ip=192.168.164.3
.
.
set ip=192.168.164.252
rem =====迴圈開始=====
net use z: /delete
net use z: \\%ip%\log
copy z:\log.db %ip%_log.db
move %ip%_log.db d:\log\
rem =====迴圈結束=====
1.要怎樣讓迴圈改變IP 並重複執行
可以,使用goto方式,讓bat重複執行
2.IP的部分也可以設定迴圈嗎??
可以,請看以下 set /a loopcount=loopcount+1
把你要實做的功能,填入 rem ----做你要做的事情----
@echo off
:loop_Start
set loopcount=0
set var_ip=192.168.164.
:loop_Repeat
rem ----打印----
@echo on
echo %var_ip%%loopcount%
@echo off
rem ----往下個IP動作----
set /a loopcount=loopcount+1
rem ----做你要做的事情----
rem ----如果到ip 252時候ip重新從1開始,否則從:loop_Repeat繼續往下一個IP動作
if %loopcount%==253 goto :loop_Start
goto loop_Repeat
rem --如果你想停止,請實做goto :exitloop
:exitloop
pause
假如有解答到你的問題,麻煩結案 :)
if %loopcount%==253 goto :loop_Start <--
這段是ip到xxx.xxx.xxx.252的時候重新從1開始
而想實做結束,需要自己寫一個判斷式接著goto :exitloop
就可以
程式碼改成這樣 , 程式碼的數值的部份,臨界值真的是最容易出錯的地方
@echo off
:loop_Start
set loopcount=1
set var_ip=192.168.164.
:loop_Repeat
rem ----打印----
@echo on
echo %var_ip%%loopcount%
@echo off
pause
rem ----往下個IP動作----
set /a loopcount=loopcount+1
rem ----做你要做的事情----
rem ----如果到ip 252時候ip重新從1開始,否則從:loop_Repeat繼續往下一個IP動作
if %loopcount%==253 goto :exitloop
goto loop_Repeat
rem --如果你想停止,請實做goto :exitloop
:exitloop
pause
感謝暐翰 大大的幫忙