您好,登錄后才能下訂單哦!
這篇文章主要講解了“如何使用批處理命令的復合語句連接符”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何使用批處理命令的復合語句連接符”吧!
幫助信息:
代碼如下:
& [...] command1 & command2 用來分隔一個命令行中的多個命令。Cmd.exe 運行第一個命令,然后運行第二個命令。
&& [...] command1 && command2 只有在符號 && 前面的命令成功時,才用于運行該符號后面的命令。Cmd.exe 運行第一個命令,然后只有在第一個命令運行成功時才運行第二個命令。
|| [...] command1 || command2 只有在符號 || 前面的命令失敗時,才用于運行符號 || 后面的命令。Cmd.exe 運行第一個命令,然后只有在第一個命令未能運行成功(接收到大于零的錯誤代碼)時才運行第二個命令。
以上都是官方的幫助信息(引用于ntcmds.chm),最好用googl搜索下載一本。
命令概括:
& 一般念“and”。
參數詳解:
1.先說說&
“用來分隔一個命令行中的多個命令”,官方的這種解釋,其實是從解釋器的角度出發的。如果按人的角度來說的話,應該是“連接多條命令”。
比如我要輸出 hello 和 world 2行文本,用”&“將兩條echo命令連接。
代碼如下:
@echo off
echo hello & echo world
pause
“&”在使用中最常出現的問題是變量延遲,關于這個問題,可以參考批處理for語句從入門到精通中關于這個知識點的部分。
2.再說說ErrorLevel
ErrorLevel由兩個單詞構成,一個Error(錯誤),一個Level(等級),如果綜合這兩個單詞,字面意義其實就是”錯誤數量“或者”錯誤類型“。
如果命令執行成功,那么”錯誤數量“自然是零。如果執行失敗,那么”錯誤數量“就是非零。
關于ErrorLevel的帖子:
批處理內部命令對錯誤返回碼errorlevel的影響
對批處理中errorlevel的幾點猜測
3.執行符號前的命令成功就執行符號后的命令
輸出 hello 和 world 2行文本,用”&&“將兩條echo命令連接。
代碼如下:
@echo off
echo hello && echo world
pause
執行的結果和用"&"鏈接兩條命令時一模一樣,那么”&“和"&&"功能一樣嗎?
答案是:它們的功能完全不同,這種一樣的結果不過是一種巧合罷了。
”&“的作用不過是鏈接多條命令,而”&&“是為了判斷符號前的命令是否執行成功,從而決定是否執行符號后的命令。
這里舉一個例子來加以說明:
代碼如下:
C:\Users\helloworld\Desktop>start "" "111.txt" && echo hello
系統找不到文件 111.txt。
C:\Users\helloworld\Desktop>start "" "111.txt" & echo hello
系統找不到文件 111.txt。
hello
用start命令打開一個不存在的文件,由于文件是不存在的,所以start命令執行失敗,這時用"&&"鏈接的命令”echo hello“沒有執行,而用”&“鏈接的執行了。
”&&“的這種特性,讓它成為了特殊的條件運算符。
4.執行符號前的命令失敗就執行符號后的命令
&&的否定操作就是||。
例如:
代碼如下:
C:\Users\helloworld\Desktop>start "" "111.txt" || echo hello
系統找不到文件 111.txt。
hello
感謝各位的閱讀,以上就是“如何使用批處理命令的復合語句連接符”的內容了,經過本文的學習后,相信大家對如何使用批處理命令的復合語句連接符這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。