和》命令不能同時出現乙個句子裡(批處理把一行看成乙個句子)!!組合命令&&的優先順序沒有管道命令》的優先順序高(自己總結
的,不妥的地方請指正)!所以這句在執行時將本行分成這兩部分:dir c:\和dir d:\ >
a.txt,而並不是如你想的這兩部分:dir c:\ && dir d:\和》
a.txt。要使用組合命令&&達到題目的要求,必須得這麼寫:
dir c:\ > a.txt && dir d:\ >> a.txt
這樣,依據優先順序高低,dos將把這句話分成以下兩部分:dir c:\ > a.txt和dir d:\ >> a.txt。例十八中的幾句的差別比較特殊,值得好好研究體會一下。
當然這裡還可以利用&命令(自己想一下道理哦):
dir c:\ > a.txt & dir d:\ >> a.txt
11、"" 字串界定符
雙引號允許在字串中包含空格,進入乙個特殊目錄可以用如下方法
cd "program files"
cd progra~1
cd pro*
以上三種方法都可以進入program files這個目錄
12、, 逗號
逗號相當於空格,在某些情況下「,」可以用來當做空格使
比如dir,c:\
13、; 分號
分號,當命令相同時,可以將不同目標用;來隔離,但執行效果不變,如執行過程中發生錯誤,則只返回錯誤報告,但程式仍會執行。(有人說不會繼續執行,其實測試一下就知道了)
比如:dir c:\;d:\;e:\;z:\
以上命令相當於
dir c:\
dir d:\
dir e:\
dir f:\
如果其中z盤不存在,執行顯示:系統找不到指定的路徑。然後終止命令的執行。
例:dir c:\;d:\;e:\1.txt
以上命令相當於
dir c:\
dir d:\
dir e:\1.txt
其中檔案e:\1.txt不存在,但e盤存在,有錯誤提示,但命令仍會執行。
為什麼?如果目標路徑不存在,則終止執行;如果路徑存在,檔案不存在,則繼續執行。
就說這些了!各位有什麼意見請回貼!有什麼疑問請到bat交流區發貼!下一節改進!
14、() 括號
小括號在批處理程式設計中有特殊的作用,左右括號必須成對使用,括號中可以包括多行命令,這些命令將被看成乙個整體,視為一條命令列。
括號在for語句和if語句中常見,用來巢狀使用迴圈或條件語句,其實括號()也可以單獨使用,請看例子。
例:命令:echo 1 & echo 2 & echo 3
可以寫成:
(echo 1
echo 2
echo 3
)上面兩種寫法效果一樣,這兩種寫法都被視為是一條命令列。
注意:這種多條命令被視為一條命令行時,如果其中有變數,就涉及到變數延遲的問題。
15、! 感嘆號
沒啥說的,在變數延遲問題中,用來表示變數,即%var%應該表示為!var!,請看前面的setlocal命令介紹
批處理特殊符號
在for中表示使用增強的變數擴充套件 在set中表示使用擴充套件環境變數指定位置的字串 在set a中表示按位取反。命令包含或者是具有優先權的界定符吧,比如for命令要用到這個 我們還可以在if,echo等命令中見到它的身影 標籤定位符,可以接受goto命令所指向的標籤。比如在批處理檔案裡面定義了乙...
批處理檢查變數是否存在特殊符號
對於這個問題,我其實也困擾了很長一段時間,現在我發現可以這樣 echo off setlocal enabledelayedexpansion 開始cls set 結果 沒有出現符號 set p 字元 set 字元長度 0 檢查字元長度 set 擷取字元 字元 字元長度 1 if not 擷取字元 ...
URL特殊符號處理
有些特殊符號在url中試不能直接傳遞的,如果要在url中傳遞這些符號,就需要使用它們的編碼 否則,將會出現亂碼。十六進製制值 1 url 中 號表示空格 2b 2 空格 url中的空格可以用 號或者編碼 20 3 分隔目錄和子目錄 2f 4 分隔實際的 url 和引數 3f 5 指定特殊字元 25 ...