讀取輸入、排序數(shù)據(jù)并將結(jié)果寫(xiě)到屏幕、文件和其他設(shè)備上。
使用 /+N 命令行選項(xiàng)時(shí),例如,/+3
表示每個(gè)比較應(yīng)該在每行的第三個(gè)字符開(kāi)始。少于 N 個(gè)字符的行在其他行之前排序。默認(rèn)情況下,比較在每行的第一個(gè)字符開(kāi)始。
使用的內(nèi)存最小值總是 160 KB。如果指定了內(nèi)存大小,則無(wú)論有多少主內(nèi)存可用,指定的確切數(shù)量(但至少 160 KB)的內(nèi)存將用于排序。
如果輸入輸出均為文件,在沒(méi)有指定大小時(shí),默認(rèn)最大內(nèi)存大小為可用主內(nèi)存的 90%,否則為主內(nèi)存的 45%。默認(rèn)設(shè)置通常會(huì)產(chǎn)生最佳的性能。
目前,默認(rèn)區(qū)域設(shè)置唯一的備用選項(xiàng)就是“C”區(qū)域設(shè)置,該區(qū)域設(shè)置根據(jù)二進(jìn)制編碼對(duì)字符排序,比自然語(yǔ)言排序快。
除非指定了 Command 或 FileName 參數(shù),否則,sort 將作為篩選器使用,并從標(biāo)準(zhǔn)輸入(通常從鍵盤(pán)、管道或文件)獲得輸入。
可以使用管道 (|) 符號(hào)通過(guò) sort 命令從其他命令定向數(shù)據(jù),或者將排序輸出定向到另一個(gè)命令(例如定向到 more 命令,以便一次顯示一個(gè)屏幕的信息)。使用小于號(hào) (<) 或大于號(hào) (>) 指定輸入文件或輸出文件可能效率不很高;應(yīng)該直接指定輸入文件(如命令語(yǔ)法中定義),并使用 /o 參數(shù)指定輸出文件。這樣可以獲得更快的速度(尤其適用于大文件)。
sort 命令不區(qū)分大小寫(xiě)字母。
sort 命令對(duì)文件大小沒(méi)有限制。
排序程序使用與“國(guó)家(地區(qū))”代碼和代碼頁(yè)設(shè)置對(duì)應(yīng)的排序序列表。大于 ASCII 代碼 127 的字符根據(jù) Country.sys 文件或 Config.nt 文件的 country 命令指定的備用文件中的信息排序。
如果排序適合內(nèi)存(默認(rèn)的最大內(nèi)存或 /m 參數(shù)指定的內(nèi)存大?。瑒t該排序僅以一個(gè)周期執(zhí)行。否則,將以兩個(gè)周期執(zhí)行排序,以便用于排序和合并周期的內(nèi)存數(shù)量相等。執(zhí)行了兩個(gè)周期后,部分排序的數(shù)據(jù)存儲(chǔ)在磁盤(pán)的臨時(shí)文件中。如果內(nèi)存不足以以兩個(gè)周期執(zhí)行排序,則會(huì)出現(xiàn)運(yùn)行時(shí)錯(cuò)誤。如果 /m 選項(xiàng)用來(lái)指定比實(shí)際可用內(nèi)存更多的內(nèi)存,則會(huì)出現(xiàn)性能下降或運(yùn)行時(shí)錯(cuò)誤。
排序文件
以下命令讀取文件 Expenses.txt,以倒序排序該文件并顯示在屏幕上:
sort /r expenses.txt
對(duì)命令輸出排序
要在名為 Maillist.txt 的大文件中搜索文本“Jones”并排序搜索結(jié)果,請(qǐng)使用管道 (|) 將 find 命令的輸出定向到 sort 命令,如下所示:
find "Jones" maillist.txt | sort
該命令產(chǎn)生包含指定文本的行的排序列表。
對(duì)鍵盤(pán)輸入排序
要排序鍵盤(pán)輸入并按字母順序在屏幕上顯示結(jié)果,可以先使用不包含參數(shù)的 sort 命令,如下所示:
排序
然后鍵入要排序的文本,在每一行的結(jié)尾按 Enter。鍵入文本后,按 Ctrl+Z,然后按 Enter。sort 命令將顯示您鍵入的文本,并按字母順序排序。
也可以將排序后的鍵盤(pán)輸入重定向到文件。詳細(xì)信息,請(qǐng)單擊“相關(guān)主題”列表中的 redirect。
相關(guān)文章