Post view

MS-DOS 7.0 輕鬆學 for Windows 95 - 5:活用你的電腦-4

MS-DOS 7.0 輕鬆學 for Windows 95 - 5:活用你的電腦-4

5.jpg

尋找檔案

相信您也有這樣的經驗,辛辛苦苦建好的檔案資料,卻一時想不起來,檔案到底放在那裡?腦袋裡面一片空白,完全沒有任何概念!您知道嗎?其實要在硬碟裡找個檔案可不是輕鬆的事!

也許您會這麼想:我只不過在電腦上安裝Windows 95、Office 97等幾套軟體而已,檔案應該不會很多吧?嗯,沒關係!讓我們一塊兒來瞧瞧,你的硬碟究竟有多少個檔案和資料夾。

請在MS-DOS提示號輸入chkdsk Enter 指令,就會看到:

Msdos9.png


這部硬碟的容量大約有1GB,即1024MB。其實1GB硬碟並不算什麼,現今的電腦安裝高達3GB以上的硬碟比比皆是。目前這部硬碟共儲存216個隱藏的系統檔案、377個資料夾,以及總計8010個使用者安裝的檔案!

哇!什麼時候裝了這麼多的檔案?其實在您安裝各軟體時,每套軟體都會裝了一堆超過您想像的檔案,這些檔案通常會集中在該軟體自訂的資料夾或散落在C:\Windows資料夾。事實上擁有或超過這種檔案數量的使用者比比皆是,只要您是Windows系統的愛用者,就避免不了檔案眾多難以管理的問題!

找檔案的方法有很多種,最簡單的辦法就是利用我們學過而且相當熟悉的dir /s指令!DIR的 /s選項,可以讓我們從目前的資料夾開始,逐一搜查各層次的小資料夾,並將所有符合條件的檔案顯示在螢幕上。

比方說,想要找出SCANDISK.EXE放在那裡,只要輸入:

Msdos10.png

我們用dir scandisk.* /s指令來找硬碟裡頭,有沒有主檔名叫SCANDISK的檔案。結果首先在C:\ 磁碟機底下找到一個名叫SCANDISK.LOG的檔案,那不是我們要的檔案。經過硬碟一陣嘰哩呱啦之後,又在C:\WINDOWS\COMMAND資料夾找到3個SCANDISK,其中的SCANDISK.EXE正是我們想要的檔案。

接著只要輸入cd windows\command,就可以打開SCANDISK. EXE所在的資料夾,再輸入scandisk即可啟動磁碟機醫生。
你可以用dir /s scandisk.exe或dir /s scandisk.exe。 /s寫在前面或後面均可,但要記得在 /s前後加上一個空白鍵:

C:\>dir /s scandisk.exe Enter
C:\>dir scandisk.exe /s Enter

MS-DOS會從現在的資料夾,即C:\ ,開始找尋檔案。如果在磁碟機底下找不到指定的檔案,會再一一拜訪各層資料夾,只要有相同的檔名,就會列出該檔案所在的位置和檔名細節,直到磁碟所有資料夾都找遍為止。

前面就是用這種方法來找出,硬碟裡有沒有我們需要的外部命令的程式檔。好,給您一個簡單的工作,請找出硬碟裡有沒有負責拷貝磁片的DISKCOPY.COM程式,如果有的話,這個程式是放在哪個資料夾呢?

輸出入轉向與管線

就像床頭音響可以選擇要聽錄音帶、廣播電台、CD唱片等不同的音源,MS-DOS也提供了二個輸出入選擇鈕,可以把螢幕輸出的資料傳給檔案或周邊設備檔,也可以把從鍵盤輸入的資料,改由檔案或周邊設備檔來讀入資料,這就是輸出入轉向指令。

・輸出轉向指令:MS-DOS用一個 > 大於符號,表示將螢幕輸出資料轉向到指定的檔案或週邊設備,而不顯示在螢幕上。如果是轉到檔案,DOS會建立新的文字檔,以儲存轉向來的文字。

・附加輸出轉向:DOS還提供了一個 >> 雙大於符號,可以把螢幕顯示的資料轉向到檔案,並附加到檔案後面。

・輸入轉向指令:小於符號 < 表示,將鍵盤轉向到指定的檔案或週邊設備,改由該檔案或設備輸入所需的資料。

輸出入轉向實例

比方說,我們想要把dir顯示的目錄畫面保存到list.txt檔。其實只要輸入以下的指令即可:

C:\>dir > list.txt Enter   ← 將 dir 輸出轉向到 LIST.TXT 檔

Msdos11.png


接著我們用dir list.txt Enter 瞧瞧,會不會真的產生LIST.TXT文字檔。事實上本書的DIR畫面都是用這種簡單的方式「抓下來」的,轉向指令很簡單好用吧!現在,讓我們看看LIST.TXT抓到了什麼樣畫面:

C:\>type list.txt Enter    ← 顯示 LIST.TXT 檔案內容

 Volume in drive C is BRENT     
 Volume Serial Number is 3148-11D9
 Directory of C:\

COMMAND  DOS        54,645  05-31-94   6:22 COMMAND.DOS
AUTOEXEC BAT           110  12-26-96  15:43 AUTOEXEC.BAT
AUTOEXEC DOS           110  11-22-96   9:30 AUTOEXEC.DOS
COMMAND  COM        93,272  11-07-95   0:00 COMMAND.COM
CONFIG   BAK            10  10-17-96  16:06 CONFIG.BAK
WINDOWS        <DIR>        10-15-96  10:58 WINDOWS
NETLOG   TXT         1,620  12-26-96  15:43 NETLOG.TXT
SCANDISK LOG           382  01-15-97  16:51 SCANDISK.LOG
PROGRA~1       <DIR>        10-15-96  11:28 Program Files
MSINPUT        <DIR>        10-15-96  11:29 MSINPUT
SCSI           <DIR>        01-11-97   2:15 SCSI
EXCHANGE       <DIR>        10-15-96  11:38 Exchange
AUTOEXEC BAK           110  11-23-96   1:55 AUTOEXEC.BAK
MSOFFICE       <DIR>        10-15-96  12:07 MSOffice
MSDOS          <DIR>        10-15-96  10:37 Msdos
MYDOCU~1       <DIR>        10-15-96  12:25 My Documents
IMAGE    DAT       150,016  11-22-96  22:18 IMAGE.DAT
IMAGE    BAK       150,016  11-22-96  22:18 IMAGE.BAK
COREL          <DIR>        11-10-96  13:13 COREL
WIN32APP       <DIR>        10-16-96  12:17 Win32App
CONFIG   DOS            10  10-17-96  16:06 CONFIG.DOS
HELLBE~1       <DIR>        11-13-96  21:35 Hellbender Trial
CONFIG   SYS             0  12-26-96  15:58 CONFIG.SYS
ADOBE          <DIR>        12-24-96  13:56 Adobe
LIST     TXT             0  01-16-97   9:00 list.txt
APEX           <DIR>        12-30-96  11:41 Apex
        15 file(s)        593,409 bytes
        15 dir(s)     230,506,496 bytes free

C:\>_

哇,好凌亂的畫面!沒關係,輸入轉向的用法也很簡單,譬如想要把LIST.TXT的內容,依英文字大小寫排列,大寫排在前面,小寫在後面,排序好並顯示在螢幕上,只要輸入:

C:\>sort < list.txt Enter   ← 把LIST.TXT轉給SORT命令

這個指令可以把LIST.TXT文件交給SORT.EXE(外部命令)排序指令,重新排列好之後,顯示在螢幕上或是重新轉向到另一個檔案,譬如sort < list.txt > listok.txt Enter 。不過,同時使用輸入和輸出轉向,可能會把您轉得“暈頭轉向”!

Msdos12.png

果然依照英文字母順序排列整齊。SORT指令用法如下:

指令語法:SORT /R [檔案名稱] [ > 檔案名稱]

如果希望SORT由大到小反序排列,可以在SORT後面指定 /R選項,這樣就會從Z排列到A,再從9排到0。

使用 > 輸出轉向時,會建立新的list.txt檔或是蓋掉舊的list.txt檔。如果希望把新資料附加到andy.txt的後面,則可以使用 >> 雙大於的附加轉向指令:

C:>dir /a >> andy.txt Enter ← 把目錄附加到 ANDY.TXT

不過,要是ANDY.TXT這個檔案先前並不存在,那麼這個dir附加轉向指令,就等於dir /a > andy.txt Enter 了。

轉向指令的注意事項

・使用 > 或 >> 輸出轉向時,會把原本顯示在螢幕的文字,被重新轉向到檔案裡頭。由於看不到輸出畫面,請不要用會使程式停下來等待使用者按鍵的指令,要不然你得“摸黑”工作啦!比如:

C:\>dir /p > list.txt Enter    ← 可能會等待使用者按鍵

・輸出入轉向或管道指令,只能附加在原DOS指令的後面使用,不可隨意加在任何位置,例如:

C:\>dir > list.txt /p Enter    ← 不能加在dir /p之間

・用type list.txt > prn Enter 可以把文件印到印表機。

・某些DOS程式並未使用標準輸出入介面,而直接讀寫螢幕或鍵盤資料,這樣DOS的輸出入轉向機制就沒有作用了。

管道指令

輸出入轉向機制,只能把資料的存取方向轉到檔案或週邊設備,並不能轉向給另一個程式,譬如:

C:\>dir > sort Enter    ← 不能轉向給 sort 指令

也就是說,當我們想要把dir的顯示結果,直接交給sort指令排序的時候,只用 > 輸出轉向指令,不但無法做到我們想要的動作,而且只會在硬碟上產生一個沒有副檔名的檔案,檔案名稱就叫sort。

這個時候可以利用MS-DOS提供的「資料過濾器」,把資料經由過濾管道再送到螢幕或檔案。例如:

C:\>dir | more Enter    ← 會自動暫停並顯示 -- More --
C:\>dir | sort Enter    ← 依文字順序排列dir的內容

當然,用dir /p或dir /on也可以做到上述功能。但如果希望用type命令顯示檔案內容時自動暫停,就必須這麼做:

C:\DOS>type readme.txt | more Enter    ← 會自動暫停顯示

MS-DOS會把type命令顯示的文字經由more過濾之後,再顯示到螢幕上。每顯示滿一個畫面,more會自動暫停顯示並等待使用者按一個鍵再繼續顯示。

資料過濾器又稱為管道指令(Pipe),MS-DOS用一個直線符號 | 來表示管道( | 與 \ 同一鍵)。我們可以利用幾個管道指令,來串接多個過濾程式,以便增加資料的處理能力。譬如:

C:\DOS>type readme.txt | sort | more Enter

這個指令可以把README.TXT文件,先交給SORT指令排序整齊之後,再交給MORE控制顯示進度,最後再顯示在螢幕上。
管線指令也可以和輸出入轉向指令同時使用,比方講底下的指令可以把dir的結果先交給SORT排序,再製作成LIST.TXT檔:

C:\>dir | sort > list.txt Enter ← 把 dir 結果排序到 list.txt

C:\>type list.txt Enter         ← 你可以用這個指令查看檔案內容

蘇言霖 2013/09/25 0 1678
Comments
Order by: 
Per page:
 
  • There are no comments yet
Rate
0 votes
Post info
蘇言霖
「超級懶貓級」社群網站站長
2013/09/25 (3838 days ago)
Actions