天天看點

批處理常用DOS指令——echo rem cd dir

作者:魚躍刺桐

一.批處理常用DOS指令篇

1.1 學習echo rem cd dir指令學習要點:

1。顯示資訊:echo

2。注釋語句:rem

3。目錄切換:cd

4。列檔案名:dir

一、顯示資訊:echo在學習echo指令前我們先在C槽下建一個新檔案夾bat,并建一個空的bat檔案。

1。輸出提示資訊

格式:echo 你要輸出的資訊

例1

echo hello,world

echo i will come back

pause

執行顯示:

C:\bat>echo hello,world

hello,world

C:\bat>echo i will come back

i will come back

C:\bat>pause

請按任意鍵繼續. . .

我們寫的批處理,能不能讓它不顯示我們到底寫了什麼指令?OK!那我們就來學習echo的第二種用法!

2。關閉該指令的回顯

格式:@ 放在指令前面

例2

@echo hello,world

@echo i will come back

pause

執行顯示:

hello,world

i will come back

C:\bat>pause

請按任意鍵繼續. . .

3。打開回顯或關閉回顯功能

格式:echo [{ on|off }]

解釋一下,如果在批處指令前加上echo off,那麼将會關閉批處中的指令回顯。當然啦,你要是不想顯示echo off

指令本身,你可以把@加在echo off前面。

例3

@echo off

echo hello,world

echo i will come back

pause

執行顯示:

hello,world

i will come back

請按任意鍵繼續. . .

在批處理前面加上@echo off ,它将使所有指令不再顯示指令本身,當然也包括了echo off 指令本身也不會回顯

了。

4。輸出空行,即相當于輸入一個回車

格式:echo.

注意指令中的“.”要緊跟在ECHO後面,中間不能有空格,否則“.”将被當作提示資訊輸出到螢幕。另外“.”可以

用,:;”/]+\ 這些任一符号替代。

例4

@echo off

echo 我在寫批處理教程哦!

echo.

echo 你看到上面有空一行麼?

pause

執行顯示:

我在寫批處理教程哦!

你看到上面有空一行麼?

請按任意鍵繼續. . .

指令ECHO.輸出的回車,經DOS管道轉向可以作為其它指令的輸入,比如echo.|time即相當于在TIME指令執行後給

出一個回車。是以執行時系統會在顯示目前時間後,自動傳回到DOS提示符狀态。

5。答複指令中的提問

格式:ECHO 回複|指令表達式

作用:通過管道指令 | 把“回複”作為輸入傳導給後面的“指令表達式”,并作為“指令表達式”的輸入。(注

意,管道指令|的輸入方法,shift鍵 \)

例5

@echo off

rd /s c:\abc

pause

執行顯示:

c:\abc, 是否确認(Y/N)?

解釋一下,這裡abc是一個不為空的檔案夾,用rd 指令删除時它将會詢問你Y或N,這時你就要手動的輸入Y/N了。

OK,我們把批處改一下,這時系統将會自動幫助我們把Y輸入确認了

例6

@echo off

echo Y|rd /s c:\abc

pause

6。建立新檔案或增加檔案内容

格式:echo 檔案内容>檔案名

例7

@echo off

echo 123>myfile.txt

pause

這樣我們就在目前目錄下建立了一個myfile.txt檔案,檔案的内容為123。如果你想要建立一個空的新檔案,那你

可以試一下這個

例8

@echo off

echo. >myfile.txt

pause

注:上面所有執行個體中的pause是暫停指令,主要是用來暫停示範給大家看的,哈哈!!

二、注釋語句:rem

rem 為注釋指令,一般用來給程式加上注解,該指令後的内容不被執行,但能回顯。

例1

@echo off

echo 這是例1哦!

rem 上面的echo 語句用于顯示提示。

pause

另外 :: 也可以起到 rem 的注釋作用, 而且更簡潔有效; 但有兩點需要注意!

第一, 任何以冒号:開頭的字元行,在批進行中都被視作标号, 而直接忽略其後的所有内容。

有效标号:冒号後緊跟一個以字母數字開頭的字元串,goto 語句可以識别。

無效标号:冒号後緊跟一個非字母數字的一個特殊符号,goto 無法識别的标号,可以起到注釋

作用,是以 :: 常被用作注釋符号,其實 : 也可起注釋作用。

例2

@echo off

echo 這是例2哦!

::上面的echo 語句用于顯示提示。

pause

第二, 與 rem 不同的是, :: 後的字元行在執行時不會回顯, 無論是否用echo on 打開指令行回顯狀态,

因為指令解釋器不認為他是一個有效的指令行, 就此點來看, rem 在某些場合下

将比 :: 更為适用; 另外, rem 可以用于 config.sys 檔案中。

三、目錄切換:cd

1。同一個分區的切換

目錄切換格式:格式:CD [盤符][路徑]

如果目前目錄是C:\Documents and Settings\mzybar,我們要切換到同一分區下不同的目錄,請看下面的例子。(

注:下面例子中的>表示指令行下的提示符,>前面的表示目前目錄。)

例1

切換到C:\WINDOWS目錄

C:\Documents and Settings\mzybar>

cd C:\WINDOWS

C:\WINDOWS>

例2

切換到C:\WINDOWS\system32目錄

C:\Documents and Settings\mzybar>

cd C:\WINDOWS\system32

C:\WINDOWS\system32>

如果目前目錄是C:\WINDOWS\system32,我們要傳回到上一層目錄,即傳回到C:\WINDOWS時,我們可以這樣:

例3

C:\WINDOWS\system32>

cd..

C:\WINDOWS>

在這裡,cd..是不是簡單了很多?呵呵!當然了,你也可以cd C:\WINDOWS

如果目前目錄是C:\WINDOWS\system32,我們要傳回根目錄,即傳回到C:\時,你可以試下這個:

例4

C:\WINDOWS\system32>

cd\

C:\ >

在這裡傳回根目錄時,我們用的是cd\指令,當然你也是可以cd c:\

其實在DOS指令中.、..和\都是表示相對路徑的,.是目前目錄,..是上一層目錄,而\則表示根目錄。我們來試下

cd.

例5

C:\WINDOWS\system32>

cd.

C:\WINDOWS\system32>

看到了吧,當輸入cd.後還是在原來的位置,因為 。是目前目錄,切換到目前目錄當然沒有變羅。

2。不同分區的切換

格式:格式:CD /d [盤符][路徑]

如果目前目錄是C:\Documents and Settings\mzybar,我們需要切換到其它分區目錄,請看:

例1

切換到D:\123\abc

C:\Documents and Settings\mzybar>

cd /d d:\123\abc

D:\123\abc>

如果我們要切換到D盤的根目錄,則有更簡單的方法,請看:

例2

C:\Documents and Settings\mzybar>

D:

D:\>

在這裡,我們直接輸入驅動器号 冒号,就可以切換到它的根目錄。

3。CD 的另一個用途:顯示目前的完整路徑,一般用通過 %cd% 加以引用。

例1

@echo off

echo 目前路徑是 %cd%

pause

執行顯示的是目前的完整路徑。

四、列檔案名:dir

顯示目錄中的檔案和子目錄清單。

DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]

[/O[[:]sortorder]] [/P] [/Q] [/S] [/T[[:]timefield]] [/W] [/X] [/4]

[drive:][path][filename] 指定要列出的驅動器、目錄和/或檔案。

/A 顯示具有指定屬性的檔案。

attributes D 目錄 R 隻讀檔案

H 隐藏檔案 A 準備存檔的檔案

S 系統檔案 - 表示“否”的字首

/B 使用空格式(沒有标題資訊或摘要)。

/C 在檔案大小中顯示千位數分隔符。這是預設值。用 /-C 來

停用分隔符顯示。

/D 跟寬式相同,但檔案是按欄分類列出的。

/L 用小寫。

/N 新的長清單格式,其中檔案名在最右邊。

/O 用分類順序列出檔案。

sortorder N 按名稱(字母順序) S 按大小(從小到大)

E 按擴充名(字母順序) D 按日期/時間(從先到後)

G 組目錄優先 - 颠倒順序的字首

/P 在每個資訊螢幕後暫停。

/Q 顯示檔案所有者。

/S 顯示指定目錄和所有子目錄中的檔案。

/T 控制顯示或用來分類的時間字元域。

timefield C 建立時間

A 上次通路時間

W 上次寫入的時間

/W 用寬清單格式。

/X 顯示為非 8dot3 檔案名産生的短名稱。格式是 /N 的格式,

短名稱插在長名稱前面。如果沒有短名稱,在其位置則

顯示空白。

/4 用四位數字顯示年

關于dir指令比較多,看到上面一大堆的參數頭都暈了,呵呵~ 在這裡我們學習一些常用的就OK了~

1。列出c:\windows下的目錄及檔案

格式:DIR [drive:][path][filename]

例1

dir c:\windows

這種方法有明顯的缺點——當清單中的目錄及檔案過多時就無法完全顯示,我們将通過/p參數解決這個問題。

/P 在每個資訊螢幕後暫停。

例2

dir /p c:\windows

我們在指令最後加上一個參數“/p”(即“page”頁的縮寫),列檔案時就會使用分頁顯示的方式,即列出一屏的目

錄及檔案後,提示“按任意鍵繼續...”,按任意鍵後則顯示下一屏。這樣就可以逐屏檢視了!

/B 使用空格式(沒有标題資訊或摘要)。

例3

dir /b c:\

我們在檢視時,發現列出來的檔案都帶有日期,時間,建立者等資訊,我們可以在指令後加上/b參數,讓它隻列出文

件名稱。

2。列出c:\下指定屬性的檔案

格式:DIR /a: attributes (這裡的:号可以省略)

attributes D 目錄 R 隻讀檔案

H 隐藏檔案 A 準備存檔的檔案

S 系統檔案 - 表示“否”的字首

例1

dir /a c:\

列出C:\下所有的檔案。

例2

dir /ah c:\

列出隐含的檔案(包含檔案和檔案夾)。

例3

dir /ad c:\

列出C:\下所有的檔案夾。

例4

dir /ad-h c:\

列出C:\下所有的檔案夾,但不包含隐含的檔案夾。

3。按分類列出c:\下的檔案

格式:DIR /o: sortorder (這裡的:号可以省略)

sortorder N 按名稱(字母順序) S 按大小(從小到大)

E 按擴充名(字母順序) D 按日期/時間(從先到後)

G 組目錄優先 - 颠倒順序的字首

例1

dir /on c:\

/o:排序方式 參數指定了dir指令顯示指令結果時的排序方式,排序方式設為“n”即代表按照檔案名的字母順序排列

(從A~Z,以此類推)。

例2

dir /ogn c:\

優先列出檔案夾,并且檔案夾和檔案都按字母順序排列。

★“/o”和“/a”都可以省略其後的冒号“:”,但之間不能留有空格。如“/o:n”省略後的形

式應為“/on”。

繼續閱讀