国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > BAT > 正文

批處理命令教學之復合語句連接符(&、&&和||)

2020-06-09 14:00:20
字體:
來源:轉載
供稿:網友

幫助信息:

代碼如下:
& [...] 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“沒有執行,而用”&“鏈接的執行了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 浑源县| 乐业县| 长沙市| 黄骅市| 辽阳市| 平顶山市| 伊金霍洛旗| 凤城市| 西青区| 依安县| 榕江县| 阿鲁科尔沁旗| 莎车县| 克拉玛依市| 渭南市| 米林县| 景宁| 临邑县| 天长市| 翼城县| 威信县| 乌兰察布市| 宜川县| 巴彦淖尔市| 屯昌县| 固安县| 沭阳县| 若尔盖县| 买车| 贵德县| 射洪县| 政和县| 昌乐县| 云南省| 滨州市| 吉木萨尔县| 含山县| 汝州市| 历史| 雷州市| 巨野县|