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