Bat copy批次檔到啟動
注意 : if 文字比較,not測不太出來,要再試試看
if %%a ==192.168.1.1 goto notsetip 這一行是ok
if %%a == 192.168.1.1 goto notsetip 這一行不行,因為==後接一個空格
if "%%a" == "192.168.1.1" goto notsetip 寫這樣也ok加上 "
數值比較
EQU - 等於
NEQ - 不等於
LSS - 小於
LEQ - 小於或等於
GTR - 大於
GEQ - 大於或等於@ECHO Off
if-else要注意格式,注意斷行符號
ver | find "XP" > nul
if %ERRORLEVEL% EQU 0 (
ECHO %ERRORLEVEL%
) else (
ECHO %ERRORLEVEL%
)
這樣也可以,寫成一行
ver | find "XP" > nul
if %ERRORLEVEL% EQU 0 (ECHO %ERRORLEVEL%) else (ECHO %ERRORLEVEL%)
PAUSE
==========將下面的另存成xxx.ba==讀txt裡的ip=============
%echo off
:: txt裡面放門診ip,如果符合門診ip會goto直接到end,不符合跑更新
for /f %%a in (\\192.168.1.1\update\UP\2016020101\test.txt) do (
IF "%%a" == "192.168.6.1" goto End
)
echo ip不是txt裡面的ip所以會更新,更新完後,轉到end
:: 這邊放要更新的東西
:End
PAUSE
@cls
==========將下面的另存成xxx.bat就可以了===copy批次檔到啟動===
@ECHO Off
::檢查XP或W7
ver | find "XP" > nul
if %ERRORLEVEL% == 0 goto ver_XP
echo %vers% | find "Windows 7" > nul
if %ERRORLEVEL% == 0 goto ver_W7
:ver_W7
::ipconfig | findstr IPv4 > ipadd.txt
ECHO Windows OS : W7
::下面放要執行程部分
xcopy \\192.168.54.236\em\update\User_Startup\Ls_Startup.bat "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup\" /F /S /Y
if exist \\192.168.54.236\em\update\LS_update.bat call \\192.168.54.236\em\update\LS_update.bat
goto End
:ver_XP
ECHO Windows OS : XP
xcopy \\192.168.54.236\em\update\User_Startup\Ls_Startup.bat "C:\Documents and Settings\All Users\「開始」功能表\程式集\啟動" /F /S /Y
if exist \\192.168.54.236\em\update\LS_update.bat call \\192.168.54.236\em\update\LS_update.bat
goto End
:End
::PAUSE
@cls
沒有留言:
張貼留言