1.一條CMD命令執行結果或狀態值存於變量:%errorlevel%
多數命令0表示正常,其獲取與判斷:
if "%errorlevel%" == "0" echo 執行成功!或 if errorlevel 0 echo 執行成功!
2. 符號:&&與||
&& 和 || 都是連續執行命令的連接命令,前一種是前面命令正常執行時執行其後的命令,後一種當然就是不正常時執行的啦。
CMD1&&CMD2||CMD3 :CMD1執行正常則執行CMD2,前面命令執行不正常則執行CMD3。
3. 回顯與命令執行信輸出
echo ON/OFF:CMD命令執行時,命令內容要不要回顯,批處理時,通常ECHO OFF;
命令輸出:命令後可指明信息輸出位置,如文件,1是正常輸出,2為錯誤信息。
1>nul 不顯示正常輸出
2>nul 不顯示錯誤輸出
4. CMD命令啟動BAT:start
附:BAT批處理文件小例子,供試運行摸索學習(所涉及目錄需先創建)。
rem——注釋
Bat代碼
@ECHO OFF
rem 設置host路徑
SET HOST_HOME=C:\\Windows\\System32\\drivers\\etc
ECHO.
ECHO.
ECHO.
ECHO.
ECHO.
ECHO.
ECHO. =-=-=-=-=87、151和204環境切換=-=-=-=-=
echo 1、切換到87開發環境
echo 2、切換到151UAT環境
echo 3、切換到204打包環境
echo 0、退出
:Restart
ECHO.
set /p cho= 請輸入你的選擇(數字):
if /i "%cho%"=="1" goto EVN87
if /i "%cho%"=="2" goto EVN151
if /i "%cho%"=="3" goto EVN204
if /i "%cho%"=="0" goto end_flag
echo 你的輸入有誤,請重新輸入
rem &&pause&&cls&&goto statart
goto Restart
:EVN87
rem 更新當前環境為87環境配置
@xcopy .\87\spdbedw.pm %AUTO_HOME%\bin\ /s /I /y >> run.log
@xcopy .\87\LOGON_DW_CRSUSR %AUTO_HOME%\etc\ /s /I /y >> run.log
@xcopy .\87\hosts %HOST_HOME%\ /s /I /y >> run.log
echo 成功切為:87開發環境!
goto Restart
:EVN151
rem 更新當前環境為151環境配置
@xcopy .\151\spdbedw.pm %AUTO_HOME%\bin\ /s /I /y >> run.log
@xcopy .\151\LOGON_DW_CRSUSR %AUTO_HOME%\etc\ /s /I /y >> run.log
@xcopy .\151\hosts %HOST_HOME%\ /s /I /y >> run.log
echo 成功切為:151UAT環境!
goto Restart
:EVN204
rem 設置PIP服務器
rem wmic ENVIRONMENT where "name='PIP_SERVER1' and username=''" set VariableValue="10.112.9.204" 1>nul
rem wmic ENVIRONMENT where "name='PIP_SERVER2' and username=''" set VariableValue="10.112.9.204" 1>nul
rem wmic ENVIRONMENT where "name='PIP_SERVER3' and username=''" set VariableValue="10.112.9.204" 1>nul
rem wmic ENVIRONMENT where "name='PIP_SERVER4' and username=''" set VariableValue="10.112.9.204" 1>nul
rem 更新當前環境為PKG環境配置
@xcopy .\204\spdbedw.pm %AUTO_HOME%\bin\ /s /I /y >> run.log
@xcopy .\204\LOGON_DW_CRSUSR %AUTO_HOME%\etc\ /s /I /y >> run.log
@xcopy .\204\hosts %HOST_HOME%\ /s /I /y >> run.log