亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > BAT > 正文

批處理常用特殊符號簡介

2020-03-29 19:53:48
字體:
來源:轉載
供稿:網友

批處理常用特殊符號

    1、@  命令行回顯屏蔽符
    2、%  批處理變量引導符
    3、>   重定向符
    4、>>  重定向符
    5、<、>&、<& 重定向符
    6、|  命令管道符
    7、^  轉義字符
    8、&  組合命令
    9、&& 組合命令
    10、||  組合命令
    11、""  字符串界定符
    12、, 逗號
    13、; 分號
    14、() 括號
    15、! 感嘆號
    16、批處理中可能會見到的其它特殊標記符: (略)
        CR(0D) 命令行結束符
        Escape(1B) ANSI轉義字符引導符
        Space(20) 常用的參數界定符
        Tab(09) ; = 不常用的參數界定符
        + COPY命令文件連接符
        * ? 文件通配符
        / 參數開關引導符
        : 批處理標簽引導符

廢話少說,開講了

1、@  命令行回顯屏蔽符

這個字符在批處理中的意思是關閉當前行的回顯。我們從前幾課知道
ECHO OFF可以關閉掉整個批處理命令的回顯,但不能關掉ECHO OFF這個命令,現在我們在ECHO OFF這個命令前加個@,就可以達到所有命令均不回顯的要求

2、%  批處理變量引導符

這個百分號嚴格來說是算不上命令的,它只是批處理中的參數而已(多個%一起使用的情況除外,以后還將詳細介紹)。
引用變量用%var%,調用程序外部參數用%1至%9等等
%0  %1  %2  %3  %4  %5  %6  %7  %8  %9  %*為命令行傳遞給批處理的參數
%0 批處理文件本身,包括完整的路徑和擴展名
%1 第一個參數
%9 第九個參數
%* 從第一個參數開始的所有參數
參數%0具有特殊的功能,可以調用批處理自身,以達到批處理本身循環的目的,也可以復制文件自身等等。
例:最簡單的復制文件自身的方法
copy %0 d:/wind.bat
小技巧:添加行內注釋
%注釋內容%(可以用作行內注釋,不能出現重定向符號和管道符號)
為什么這樣呢?此時“注釋內容”其實被當作變量,其值是空的,故只起注釋作用,不過這種用法容易出現語法錯誤,一般不用。

3、>   重定向符

輸出重定向命令
這個字符的意思是傳遞并且覆蓋,他所起的作用是將運行的結果傳遞到后面的范圍(后邊可以是文件,也可以是默認的系統控制臺)
    在NT系列命令行中,重定向的作用范圍由整個命令行轉變為單個命令語句,受到了命令分隔符&,&&,||和語句塊的制約限制。
比如:
使用命令:echo hello >1.txt將建立文件1.txt,內容為”hello “(注意行尾有一空格)
使用命令:echo hello>1.txt將建立文件1.txt,內容為”hello“(注意行尾沒有空格)

4、>>  重定向符

輸出重定向命令
這個符號的作用和>有點類似,但他們的區別是>>是傳遞并在文件的末尾追加,而>是覆蓋
用法同上
同樣拿1.txt做例子
使用命令:

echo hello > 1.txtecho world >>1.txt

這時候1.txt 內容如下:
hello
world

5、<、>&、<& 重定向符

這三個命令也是管道命令,但它們一般不常用,你只需要知道一下就ok了,當然如果想仔細研究的話,可以自己查一下資料。(本人已查過,網上也查不到相關資料)
<,輸入重定向命令,從文件中讀入命令輸入,而不是從鍵盤中讀入。

@echo offecho 2005-05-01>temp.txtdate <temp.txtdel temp.txt

這樣就可以不等待輸入直接修改當前日期
>&,將一個句柄的輸出寫入到另一個句柄的輸入中。
<&,剛好和>&相反,從一個句柄讀取輸入并將其寫入到另一個句柄輸出中。
常用句柄:0、1、2,未定義句柄:3—9
1>nul 表示禁止輸出正確的信息
2>nul 表示禁止輸出錯誤信息。
其中的1與2都是代表某個數據流輸入輸出的地址(NT CMD 稱之為句柄,MSDOS稱之為設備)。
句柄0:標準輸入stdin,鍵盤輸入
句柄1:標準輸出stdout,輸出到命令提示符窗口(console,代碼為CON)
句柄2:標準錯誤stderr,輸出到命令提示符窗口(console,代碼為CON)
其中的stdin可被<重定向,stdout可被>、>>重定向。
我們已經知道讀取文本中的內容可以用for命令,但如果只需要讀取第一行用for命令就有點麻煩。簡單的辦法如下:

@echo offset /p str=<%0echo %str%pause

運行顯示批處理文件自身的第一行:@echo off

6、|  命令管道符

格式:第一條命令 | 第二條命令 [| 第三條命令...]
將第一條命令的結果作為第二條命令的參數來使用,記得在unix中這種方式很常見。
例如:
dir c:/|find "txt"
以上命令是:查找C:/所有,并發現TXT字符串。
FIND的功能請用 FIND /? 自行查看
在不使format的自動格式化參數時,我是這樣來自動格式化A盤的
echo y|format a: /s /q /v:system
用過format的都知道,再格盤時要輸入y來確認是否格盤,這個命令前加上echo y并用|字符來將echo y的結果傳給format命令
從而達到自動輸入y的目的
(這條命令有危害性,測試時請慎重)

7、^  轉義字符

^是對特殊符號<,>,&的前導字符,在命令中他將以上3個符號的特殊功能去掉,僅僅只把他們當成符號而不使用他們的特殊意義。
比如

echo test ^>1.txt

結果則是:test > 1.txt
他沒有追加在1.txt里,呵呵。只是顯示了出來
另外,此轉義字符還可以用作續行符號。
舉個簡單的例子:

@echo offecho 英雄^是^好^男人pause

不用多說,自己試一下就明白了。
為什么轉義字符放在行尾可以起到續行符的作用呢?原因很簡單,因為每行末尾還有一個看不見的符號,即回車符,轉義字符位于行尾時就讓回車符失效了,從而起到了續行的作用。

8、&  組合命令

語法:第一條命令 & 第二條命令 [& 第三條命令...]
&、&&、||為組合命令,顧名思義,就是可以把多個命令組合起來當一個命令來執行。這在批處理腳本里是允許的,而且用的非常廣泛。因為批處理認行不認命令數目。
這個符號允許在一行中使用2個以上不同的命令,當第一個命令執行失敗了,也不影響后邊的命令執行。
這里&兩邊的命令是順序執行的,從前往后執行。
比如:
dir z:/ & dir y:/ & dir c:/
以上命令會連續顯示z,y,c盤的內容,不理會該盤是否存在

9、&& 組合命令

語法:第一條命令 && 第二條命令 [&& 第三條命令...]
用這種方法可以同時執行多條命令,當碰到執行出錯的命令后將不執行后面的命令,如果一直沒有出錯則一直執行完所有命令
這個命令和上邊的類似,但區別是,第一個命令失敗時,后邊的命令也不會執行
dir z:/ && dir y:/ && dir c:/

10、||  組合命令

語法:第一條命令 || 第二條命令 [|| 第三條命令...]
用這種方法可以同時執行多條命令,當一條命令失敗后才執行第二條命令,當碰到執行正確的命令后將不執行后面的命令,如果沒有出現正確的命令則一直執行完所有命令;

提示:組合命令和重定向命令一起使用必須注意優先級
管道命令的優先級高于重定向命令,重定向命令的優先級高于組合命令
問題:把C盤和D盤的文件和文件夾列出到a.txt文件中??蠢?br /> dir c:/ && dir d:/ > a.txt
這樣執行后a.txt里只有D盤的信息!為什么?因為組合命令的優先級沒有重定向命令的優先級高!所以這句在執行時將本行分成這兩部分: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
[這個也可以用 dir c:/;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命令介紹。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品久久久久久久久借妻| 日韩人在线观看| 国产精品第3页| 欧美老女人性生活| 原创国产精品91| 国产精品99久久久久久白浆小说| 亚洲理论在线a中文字幕| 国产九九精品视频| 在线一区二区日韩| 91网站在线免费观看| 日日噜噜噜夜夜爽亚洲精品| 亚洲影院色在线观看免费| 欧美极品在线播放| 久久九九亚洲综合| 91国产中文字幕| 国产日本欧美一区二区三区| 亚洲色图偷窥自拍| 久久久久中文字幕2018| 欧美日韩国产第一页| 久久久人成影片一区二区三区| 欧美成人免费小视频| 中文日韩电影网站| 久久久久久久久久国产精品| 日韩av在线影院| 久久91超碰青草是什么| 日韩电影免费在线观看中文字幕| 欧美成年人在线观看| 国产69精品久久久久久| 亚洲欧洲一区二区三区在线观看| 国产精品高潮呻吟久久av黑人| 亚洲最大的免费| 性欧美亚洲xxxx乳在线观看| 91精品国产网站| 精品国产自在精品国产浪潮| 91在线免费观看网站| 九九九久久久久久| 中文字幕日韩av电影| 国产精品欧美一区二区三区奶水| 久久在线视频在线| 日韩va亚洲va欧洲va国产| 68精品久久久久久欧美| 久久网福利资源网站| 精品丝袜一区二区三区| 国产精品亚洲自拍| 亚洲精品日韩久久久| 亚洲裸体xxxx| 国内揄拍国内精品| 尤物yw午夜国产精品视频| 久久精品国产免费观看| 亚洲第一视频网| 91青草视频久久| 国产精品色悠悠| 91在线观看免费高清| 欧美黑人巨大xxx极品| 欧美中文在线观看| 美女999久久久精品视频| 九九热最新视频//这里只有精品| 精品激情国产视频| 欧美怡春院一区二区三区| 精品国产91乱高清在线观看| 永久555www成人免费| 69影院欧美专区视频| 日本不卡视频在线播放| 欧美亚洲另类视频| 亚洲乱码av中文一区二区| 精品国产一区二区三区久久狼黑人| 国产精品一区二区av影院萌芽| 欧美日本高清视频| 亚洲美女精品久久| 国产精品国产亚洲伊人久久| 中文字幕一区二区三区电影| 欧美剧在线观看| 欧美国产高跟鞋裸体秀xxxhd| 黑人巨大精品欧美一区二区免费| 色婷婷av一区二区三区在线观看| 亚洲欧洲一区二区三区久久| 欧美大胆a视频| 欧美日韩久久久久| 91精品国产91久久久久久最新| 日韩激情视频在线| 欧美日韩国产丝袜另类| 精品久久久久久久久久久| 欧美激情国产日韩精品一区18| 91伊人影院在线播放| 欧美日韩激情网| 黑人狂躁日本妞一区二区三区| 国产欧美日韩高清| 欧美亚洲国产成人精品| 韩曰欧美视频免费观看| 国产精品日韩在线播放| 国产一区二区色| 欧美一级在线亚洲天堂| 日韩中文字幕在线观看| 日本高清久久天堂| 国产精品r级在线| 97在线观看免费高清| 亚洲第一在线视频| 亚洲第五色综合网| 国产精品一区二区久久国产| 亚洲精品第一页| 欧美中文字幕在线视频| 国产精品爱久久久久久久| 97超碰蝌蚪网人人做人人爽| 欧美日韩黄色大片| 久久久久久久久久久av| 亚洲黄在线观看| 久久久中精品2020中文| 亚洲欧美综合精品久久成人| 亚洲激情在线观看视频免费| 欧美日韩亚洲成人| 久久久亚洲福利精品午夜| 国产精品www色诱视频| 亚洲18私人小影院| 亚洲欧美色图片| 琪琪亚洲精品午夜在线| 久久99热精品这里久久精品| 91在线观看免费高清完整版在线观看| 国产精品丝袜一区二区三区| 少妇激情综合网| 国产成人精品综合| 欧美日韩国产区| 97在线视频免费看| 欧美在线亚洲一区| 亚洲视频网站在线观看| 97视频在线观看免费高清完整版在线观看| 精品免费在线观看| 中文日韩电影网站| 日韩在线免费视频| 国产精品一区久久| 日韩高清有码在线| 91亚洲国产成人久久精品网站| 亚洲另类图片色| 97激碰免费视频| 97色在线观看免费视频| 91精品啪aⅴ在线观看国产| 亚洲人精选亚洲人成在线| 欧美中文字幕在线观看| 欧美国产日本高清在线| 51午夜精品视频| 欧美成人精品影院| 欧美性极品少妇精品网站| 91情侣偷在线精品国产| 欧美日韩性视频| 97国产suv精品一区二区62| 欧美精品videosex性欧美| 深夜福利日韩在线看| 日本亚洲精品在线观看| 精品视频在线播放色网色视频| 国产成人精品国内自产拍免费看| 久久久精品中文字幕| 欧美激情国产日韩精品一区18| 久久伊人精品一区二区三区| 中文字幕欧美日韩| 国产精品美女主播| 国产精品高潮呻吟视频| 欧美性生交xxxxx久久久| 欧美裸身视频免费观看| 亚洲免费一在线| 日韩hd视频在线观看| 91中文在线观看| 69**夜色精品国产69乱| 国产精品久久中文| 2020国产精品视频| 日韩av电影在线免费播放|