第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

成功后哪個cmd.exe內(nèi)部命令將ERRORLEVEL清除為0?

成功后哪個cmd.exe內(nèi)部命令將ERRORLEVEL清除為0?

成功后哪個cmd.exe內(nèi)部命令將ERRORLEVEL清除為0?在Windows批處理腳本中處理錯誤的常用方法是使用if errorlevel 1 ...或等if %errorlevel% neq 0 ...。通常,人們希望錯誤處理代碼保留ERRORLEVEL。我相信所有外部命令總是會導致ERRORLEVEL被設(shè)置為某個值,因此錯誤處理代碼必須在執(zhí)行外部命令之前在環(huán)境變量中保留ERRORLEVEL。但內(nèi)部命令怎么樣?問題是,一些內(nèi)部命令在成功時將ERRORLEVEL清除為0,而有些則沒有。而且我找不到任何指定哪些命令做什么的文檔。所以問題是,哪些內(nèi)部命令成功后將ERRORLEVEL清除為0?這不是關(guān)于返回的ERRORLEVEL代碼的一般問題,而是關(guān)于成功結(jié)果的嚴格問題。注意: 多年來我一直很好奇。所以我最終決定進行一系列實驗并得出一個明確的答案。我發(fā)布此問答來分享我發(fā)現(xiàn)的內(nèi)容。
查看完整描述

2 回答

?
鴻蒙傳說

TA貢獻1865條經(jīng)驗 獲得超7個贊

您對CALL命令的描述不完整:


CALL:如果CALLed命令沒有設(shè)置它,則清除ERRORLEVEL。示例:call echo OK。


檢查這個小例子:


@echo off


call :setTwo

echo Set two: %errorlevel%


call :preserve

echo Preserve: %errorlevel%


call echo Reset

echo Reset: %errorlevel%


call :subNotExists 2> NUL

echo Sub not exist: %errorlevel%


goto :EOF


:setTwo

exit /B 2


:preserve

echo Preserve

exit /B

輸出:


Set two: 2

Preserve

Preserve: 2

Reset

Reset: 0

Sub not exist: 1

CALL 描述應該說是這樣的:


CALL:如果CALLed命令沒有設(shè)置它,則清除ERRORLEVEL。示例:call echo OK,但如果被調(diào)用的命令是子例程,則它會保留先前的ERRORLEVEL。如果被調(diào)用的子程序不存在,則將ERRORLEVEL設(shè)置為1。


查看完整回答
反對 回復 2019-08-28
  • 2 回答
  • 0 關(guān)注
  • 1282 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號