您好,登錄后才能下訂單哦!
5個(gè)最酷的終端分頁器分別是哪些,相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
像日志或源代碼這樣的大文件可能會多達(dá)成千上萬行,這使得在文件內(nèi)導(dǎo)航非常困難,尤其是在終端上。此外,大多數(shù)終端仿真器的回滾緩沖區(qū)只有幾百行。這可能使得無法使用打印到標(biāo)準(zhǔn)輸出的實(shí)用程序(例如 cat
、head
和 tail
)在終端中瀏覽大型文件。在計(jì)算時(shí)代的早期,程序員通過開發(fā)用于以虛擬“頁面”形式顯示文本的實(shí)用程序來解決這些問題,該實(shí)用程序被形象地描述為分頁器。
分頁器提供了許多使文本文件導(dǎo)航更加簡單的功能,包括滾動、搜索功能,以及作為命令管道的一部分而具有的功能。與大多數(shù)文本編輯器相比,某些終端分頁器不需要加載整個(gè)文件即可查看,這使得它們更快,特別是對于非常大的文件。
在現(xiàn)代 Linux 計(jì)算時(shí)代,終端仿真器比以往更加復(fù)雜。它們提供了對繽紛的色彩、終端尺寸調(diào)整以及許多其它功能的支持,這些功能使得辨析屏幕上的文本變得更加輕松和高效。從諸如 pg
和 more
這樣極其簡單的 UNIX 實(shí)用程序,到涵蓋各種使用場景的、功能廣泛的復(fù)雜程序,終端分頁器也經(jīng)歷了類似的演變??紤]到這一點(diǎn),我們或“多”或“少”地匯總了一些最受歡迎的終端分頁實(shí)用程序的列表。
more
是最早的分頁器之一,最初在 3.0 BSD 版本中出現(xiàn)。more
的第一個(gè)實(shí)現(xiàn)由 Daniel Halbert 編寫于 1978 年。從那時(shí)起,more
已成為許多操作系統(tǒng)的普遍功能,包括 Windows、OS/2,MacOS 和大多數(shù) Linux 發(fā)行版。
more
是一個(gè)非常輕量級的實(shí)用程序。util-linux 軟件包中提供的版本只有不到 2100 行的 C 語言代碼。但是,這種較小的代碼大小是有代價(jià)的。大多數(shù)版本的 more
的功能相對有限,不支持向后滾動或搜索。命令也同樣精簡:按回車鍵可滾動一行,或按空格鍵滾動一頁。其他一些有用的命令包括:
在閱讀時(shí)按 v
鍵以在默認(rèn)的終端編輯器中打開當(dāng)前文件。
/模式
可以讓你搜索下一個(gè)出現(xiàn)的“模式”。
以多個(gè)文件作為參數(shù)調(diào)用 more
時(shí),:n
和 :p
將分別打開下一個(gè)和上一個(gè)文件 ### less
less
最初被認(rèn)為是 more
的繼承者,解決了它的一些局限性。less
以 more
的功能為基礎(chǔ),增加了許多有用的功能,包括向后滾動、向后搜索。它也更適合窗口大小調(diào)整。
less
中的導(dǎo)航方式與 more
類似,盡管 less
也從 vi
編輯器借用了一些有用的命令。用戶可以使用熟悉的主行導(dǎo)航鍵(LCTT 譯注:指 左手的 A
、S
、D
、F
和右手的 J
、K
、L
、;
,及大拇指所在的空格鍵)瀏覽文檔??匆谎?less
的手冊頁,就會發(fā)現(xiàn)相當(dāng)多的可用命令。一些特別有用的示例包括:
?模式
可讓你在文件中向后搜索“模式”。
&模式
僅顯示具有“模式”特征的行。這對于發(fā)現(xiàn)自己經(jīng)常要使用 $ grep 模式 | less
的人特別有用。
使用 -s
(或 –sqeueeze-blank-lines
)標(biāo)志來調(diào)用 less
,使你可以查看空白較大的文本文件。 多個(gè)換行符被簡化為單個(gè)中斷行。
在該程序中調(diào)用的 s 文件名
將輸入保存到 文件名
中(如果輸入來自管道)。
或者,使用 -o 文件名
標(biāo)志來調(diào)用 less
將把 less
的輸入保存到 文件名
中。 隨著這些增強(qiáng)的功能也帶來了體積的略微增大。在寫作本文時(shí),F(xiàn)edora 隨附的 less
版本大約有 25000 行源代碼。當(dāng)然,除非是受存儲限制最大的系統(tǒng),在所有其它的系統(tǒng)上這都不是問題。less
比 more
功能更多。
less
旨在擴(kuò)展 more
的現(xiàn)有功能,而 most
采用另一種方法。most
不是在傳統(tǒng)的單個(gè)文件視圖上進(jìn)行擴(kuò)展,而是使用戶能夠?qū)⑵湟晥D拆分為“窗口”。每個(gè)窗口以不同的查看模式包含不同的文件。
重要的是,most
考慮了其輸入文本的寬度。默認(rèn)的查看模式是不換行的(less
中的 -S
參數(shù)),此功能在處理“寬”文件時(shí)特別有用。盡管對于某些用戶來說,這些設(shè)計(jì)決策可能代表著與傳統(tǒng)的重大偏離,但最終結(jié)果卻非常強(qiáng)大。
除了 more
提供的導(dǎo)航命令外,most
使用直觀的助記符進(jìn)行文件導(dǎo)航。例如,t
移至文件的頂部(Top),而 b
移至底部(Bottom)。這樣,不熟悉 vi
及其衍生品的用戶會發(fā)現(xiàn) most
非常簡單好用。
most
的與眾不同之處在于它能夠快速輕松地拆分窗口和上下文。例如,可以使用以下命令打開兩個(gè)不同的文本文件:
$ most textFile1.txt textFile2.txt
為了水平拆分屏幕,請使用組合鍵 Ctrl+x, 2
或 Ctrl+w, 2
。 :n
命令將在給定窗口中打開下一個(gè)文件參數(shù),提供兩個(gè)文件的分屏視圖:
如果在一個(gè)窗口中關(guān)閉自動換行,它不會影響其他窗口的行為。(行末的)\
字符表示換行或折疊,而 $
字符表示文件超出了當(dāng)前窗口的限制。
使用 SQL 數(shù)據(jù)庫的人員通常需要能夠一目了然地檢查數(shù)據(jù)庫的內(nèi)容。許多流行的開源 DBMS(例如 MySQL 和 PostGreSQL)的命令行界面都使用系統(tǒng)默認(rèn)的分頁器來查看無法顯示在單個(gè)屏幕上的輸出。諸如 more
和 less
之類的實(shí)用程序是圍繞呈現(xiàn)文本文件的想法而設(shè)計(jì)的,但是對于更結(jié)構(gòu)化的數(shù)據(jù),還有一些不足之處。天真的文本分頁程序沒有寬的表格數(shù)據(jù)的概念,當(dāng)處理大型查詢時(shí),這可能會令人感到沮喪。
pspg 試圖通過為用戶提供在查看時(shí)凍結(jié)列、原位排序數(shù)據(jù)并為輸出著色的功能來解決此問題。盡管pspg
最初是專門用作 psql
的分頁器的替代品,但該程序還支持查看 CSV 數(shù)據(jù),并且是 mysql
和 pgcli
的合適的直接替代品。
在現(xiàn)代的顏色鮮明的終端中,無休止的黑色頁面上的灰色文字感覺太過時(shí)了。強(qiáng)大的文本編輯器(如 vim
)提供的語法高亮顯示選項(xiàng)對于瀏覽源代碼很有用。此外,vim
提供的搜索功能遠(yuǎn)遠(yuǎn)超過了競爭對手??紤]到這一點(diǎn),vim
附帶了一個(gè) shell 腳本 less.sh
,該腳本可以使 vim
替代傳統(tǒng)的分頁器。
要將 vim
設(shè)置為手冊頁的默認(rèn)分頁器,請將以下內(nèi)容添加到 shell 的配置中(如果使用默認(rèn)的bash shell 的話是 ~/.bashrc
):
export MANPAGER="/bin/sh -c \"col -b | vim -c 'set ft=man ts=8 nomod nolist nonu noma' -\""
或者,要將 vim
設(shè)置為系統(tǒng)范圍內(nèi)的默認(rèn)分頁器,請找到 less.sh
腳本。(你可以在當(dāng)前 Fedora 系統(tǒng)上的 /usr/share/vim/vim81/macros/
找到它。)將此位置導(dǎo)出為變量 PAGER
以將其設(shè)置為默認(rèn)值,或者將其設(shè)置為別名以顯式調(diào)用它。
看完上述內(nèi)容,你們掌握5個(gè)最酷的終端分頁器分別是哪些的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。