跳過空行。通過指定可選的「options」參數可以覆蓋默認的解析行為。這是一個引用字符串,它包含一個或多個關鍵字以指定不同的解析選項。關鍵字是:
關鍵字 說明
eol=c 指定行尾註釋字符(只一個字符)
skip=n 指定在文件的開頭跳過的行數。
delims=xxx 指定定界符集合。這將替換空格和製表符的默認分隔符集。
tokens=x,y,m-n 指定將令牌從每行傳遞到每個反覆的正文。這將導致分配其他變量名。m-n 格式是一個範圍,指定從 mth 到 nth 的令牌。如果在令牌 = 字符串中最後一個字符是星號,則將分配附加的變量,並在解析最後一個令牌後在行上接收剩餘的文本。
usebackq 指定將右引號字符串作為命令執行,單引號字符串是文字字符串命令,您可以使用雙引號包括 filenameset 中的文件名。
變量替換
此外,已經增強了 for 變量引用的替換修改程序。現在可以使用下列可選的語法(對於任何變量 I):
變量(使用修改程序) 說明
%~I 展開刪除了周圍的任何引號 (") 的 %I
%~fI 將 %I 展開到完全合格的路徑名
%~dI 只將 %I 展開到驅動器號
%~pI 只將 %I 展開到路徑
%~nI 只將 %I 展開到文件名
%~xI 只將 %I 展開到文件擴展名
%~sI 展開路徑以只包含短名稱
%~aI 將 %I 展開到文件的文件屬性
%~tI 將 %I 展開到文件的日期/時間
%~zI 將 %I 展開到文件大小
%~$PATH:I 搜索 PATH 環境變量所列出的目錄,並將 %I 展開開到第一個找到結果的全部合格名稱。如果沒有定義環境變量名,或搜索後沒有找到文件,則此修改程序將擴展為空字符串。
修改程序可以合併以獲得複雜的結果:
變量(使用合併的修改程序) 說明
%~dpI 只將 %I 展開到驅動器號和路徑
%~nxI 只將 %I 展開到文件名和擴展名
%~fsI 將 %I 展開到只包含短名稱的完整路徑名
%~dp$PATH:I 在 PATH 環境變量所列出的目錄中搜索 %I,並展開到第一個找到結果的驅動器號和路徑
%~ftzaI 將 %I 擴展到與 dir 相似的輸出行
注意
在上述範例中,%I 和 PATH 可被其他有效值替換。通過有效的 for 變量名終止 %~ 語法。
使用大寫變量名(例如 %I)可以使代碼更具可讀性,並且避免與不區分大小寫的修改程序混淆。
Shift
更改批處理文件中可替換參數的位置。
shift
啟用命令擴展(Windows 2000 中的默認設置)後,shift 命令支持 /n 開關,該開關通知命令在第 n 個參數處開始更改,n 可以是從 0 到 8 的任何一個值。例如,
SHIFT /2
將 %3 改為 %2,將 %4 改為 %3 等等,而 %0 和 %1 保持不變。
篩選器命令
篩選器命令可以幫助您排序、查看和選擇部分命令輸出結果。
通過篩選器命令傳遞信息
篩選器命令可以劃分、重排以及提取通過的部分信息操作。Windows 2000 有三個篩選器命令:
more 命令每次顯示一屏文件內容或命令輸出。
find 命令在文件和命令輸出中搜索指定字符。
sort 命令按字母順序排列文件和命令輸出。
要將輸入從文件發送到篩選器命令,請使用小於符號 (<)。如果要篩選器命令從其他命令獲得輸入,請使用管道 (|)。
使用 more 命令來控制屏幕顯示
more 命令每次一屏地顯示文件的內容或命令輸出。例如,下面的 more 命令每次顯示一屏 List.txt 文件的內容:
more < list.txt
信息顯示一屏後,會出現字「More」。要繼續顯示下一屏,請按鍵盤上任意鍵。要停止命令且不查看詳細信息,請按 CTRL+C 鍵。
如果使用產生多屏輸出的命令,more 將十分有用。例如,假設定要查看硬盤的目錄樹。如果 Windows 2000 不能將目錄在一屏內全部顯示出來,請使用帶管道號 (|) 和 more 命令的 tree 命令,如下例所示:
tree c:\ | more
tree 命令的第一屏輸出被顯示,後跟詞「More」。Windows 2000 暫停,直到用戶按鍵盤上的任意鍵為止(PAUSE 鍵除外)。
使用 find 命令搜索文本
find 命令在一個或多個文件中搜索指定文本。Windows 2000 顯示每個包含該文本的行。find 命令可以用作篩選器命令或者標準的 Windows 2000 命令。有關將 find 用作標準的 Windows 2000 命令的信息,請單擊「相關主題」列表中的 find。
要將 find 當作篩選器命令使用,請包含小於符號 (<) 和搜索的文件名。當輸入文件名時,請記住搜索要區分大小寫。例如,下面的命令查找文件 Trade.txt 中所有的「Pacific Rim」字符串:
find "Pacific Rim" < trade.txt
要保存 find 命令的輸出而不是顯示輸出,請使用大於號 (>) 和要存儲輸出的文件名。例如,下面的命令查找文件 Trade.txt 中所有的「Pacific Rim」字符串,並將結果保存在 Nwtrade.txt 文件中:
find "Pacific Rim" < trade.txt > nwtrade.txt
對文本文件排序
sort 命令按字母順序排列文本文件或命令的輸出。例如,可以使用以下命令對 List.txt 文件的內容進行排序,並在屏幕上顯示結果:
sort < list.txt
在此範例中,sort 命令對 List.txt 文件的行進行排序並顯示結果,但不更改文件。要保存 sort 命令的輸出而不是顯示輸出,請在命令中包含大於號 (>) 和文件名。例如,可以使用以下命令對 List.txt 文件的行按字母順序排序,並將結果存到 Alphlist.txt 文件中:
sort < list.txt > alphlist.txt
要排序命令的輸出,請鍵入後面帶有管道 (|) 和 sort 命令的命令。例如,下面的命令對 find 命令的輸出結果進行排序:
find "Jones" maillst.txt | sort
在鍵入該命令時,Windows 2000 按字母順序列出在其中出現「Jones」的行。
帶重定向符的合併命令
可以將篩選器命令、其他命令和文件名合併以生成自定義命令。例如,可以使用以下命令存儲包含「LOG」字符串的文件名:
dir /b | find "LOG" > loglist.txt
Windows 2000 通過 find 過濾器命令發送 dir 命令的輸出並將包含字符串「Log」的文件名存儲在 Loglist.txt 文件中。將結果存儲為文件名列表(如,A.log、Logdat.svd 和 Mylog.bat)。
要在相同命令中使用多個篩選器,請使用管道 (|) 分隔篩選器。例如,下面的命令搜索 C 盤上的每個目錄以查找包含「Log」字符串的文件名,並且每次顯示一屏:
dir c:\ /s /b | find "LOG" | more
因為使用管道 (|),Windows 2000 通過 find 命令發送 dir 命令的輸出結果。find 命令只選擇包含字符串「Log」的文件名。more 命令每次一屏地顯示 find 命令選擇的文件名。
2004-11-21 15:02
More
每次顯示一個輸出屏幕。該命令通常用於查看長文件。可以單獨使用此命令,或者使用它控制其他命令的輸出,例如 type 命令。當顯示填充可用的查看區域時將出現 more 提示,用戶可以輸入許多命令來控制查看文件其餘部分的方式。
command name | more [/c] [/p] [/s] [/tn] [+n]
more [[/c] [/p] [/s] [/tn] [+n]] < [drive:][path] filename
more [/c] [/p] [/s] [/tn] [+n] [files]
參數
[drive:][path] filename
指定要顯示的文件。
command name
指定將顯示其輸出的命令。
/c
顯示頁面前清除屏幕。
/p
擴展換頁符。
/s
將多個空白行更改為一個空白行。
/tn
將製表位更改為 n 個空格
+n
顯示由 n 指定的行開始的第一個文件。
files
指定要顯示的文件列表。用空格分隔文件名。
More 子命令
以下命令在 more 提示 (-- More --) 下接受。
關鍵字 操作
space 顯示下一頁。
ENTER 顯示下一行。
F 顯示下一個文件。
q 退出。
? 顯示可用命令。
= 顯示行號。
P n 顯示以下 n 行。
S n 跳過下面 n 行。
2004-11-21 15:02
Find
在一個文件或多個文件中搜索指定的文本字符串。
當搜索到指定的文件後,find 將顯示出包含指定字符串的所有行。
find [/v] [/c] [/n] "string" [[drive:][path]filename[...]]
參數
/v
顯示未包含指定字符串的所有行。
/c
只顯示包含指定字符串的行數。
/n
將文件行號置於每行開頭。
/I
指定搜索不區分大小寫。
"string"
指定要搜索的字符組。必須將 string 的文本包括在引號中。
[drive:][path] filename
指定要在其中搜索指定字符串的文件的位置和名稱。
2004-11-21 15:02
Sort
讀取輸入、排序數據並將結果寫到屏幕、文件和其他設備上。
sort [/r] [/+n] [/m kilobytes] [/l locale] [/rec characters] [[drive1:][path1]filename1] [/t [drive2:][path2]] [/o [drive3:][path3]filename3]
[command |] sort [/r] [/+n] [/m kilobytes] [/l locale] [/rec characters] [[drive1:][path1]filename1] [/t [drive2:][path2]] [/o [drive3:][path3]filename3]
參數
/r
顛倒排序順序,即從 Z 到 A 排序,然後從 9 到 0 排序。
/+n
指定字符位置號 n,sort 在此處開始每次比較。例如,/+3 表示每次比較在每行的第三個字符開始。少於 n 個字符的行在其他行之前排序。默認情況下,比較在每行的第一個字符開始。
/m kilobytes
指定用於排序的主內存數量,按千字節 (KB) 計。使用的內存最小值總是 160 KB。如果指定了內存大小,則無論有多少主內存可用,指定的確切數量(但至少 160 KB)的內存將用於排序。
如果輸入輸出均為文件,在沒有指定大小時,默認最大內存大小為可用主內存的 90%,否則為主內存的 45%。默認設置通常會產生最佳的性能。
/l locale
替代由系統默認區域設置定義的字符排序順序;即在安裝 Windows 2000 時選擇的語言和「國家(地區)」。目前,默認區域設置唯一的備用選項就是「C」區域設置,該區域設置比自然語言排序快,根據二進制編碼對字符排序。
/rec characters
指定記錄或輸入文件的行中的最多字符數(默認值為 4096,最大值為 65535)。
[drive1:][path1]filename1
指定要排序的文件。如果沒有指定文件名,則對標準輸入排序。指定輸入文件比將同一文件作為標準輸入重定向速度快。
/t [drive2:][path2]
指定保留 sort 命令工作存儲的目錄路徑,防止數據不能裝入主內存。默認為使用系統臨時目錄。
/o [drive3:][path3]filename3
指定要存儲排序後的輸入的文件。如果沒有指定,數據將寫入標準輸出。指定輸出文件比將同一文件作為標準輸出重定向速度快
文章定位: