Linux 檢視檔案內容——bat 命令

roc_guo 發表於 2022-07-15
Linux
導讀 what's the bat
工作中使用 cat 的頻率較高,主要用於顯示文字檔案的具體內容。

但 cat  兩個很重大的缺陷:
Linux 檢視檔案內容——bat 命令Linux 檢視檔案內容——bat 命令
不能語法高亮輸出
文字太長的話無法翻頁輸出。
所以 cat 一般只用來檢視行數不多的小檔案,大檔案需要用到 head、tail 等 。

國外有大牛將 cat 命令進行了增強,開發了更好用的 bat 命令。

bat 主要功能:

語法高亮——支援根據程式語言以及 markdown 語法將文字關鍵詞高亮,可閱讀性大大增強;
自動翻頁——如果文字內容太長,超過一頁的話,它會自動將內容通過管道傳到less 命令,實現翻頁的效果;
整合Git——bat 命令跟 git 完美結合,將文字的修改部分在左側展示,一眼就可以看出檔案修改了啥。
顯示不可列印字元——有些字元無法通過cat 在螢幕上顯示
安裝

sudo apt-get install bat

這裡要注意一下,由於名稱的衝突,在 Ubuntu 下無法直接通過敲 bat 這三個字母執行 bat 命令,而是需要敲 batcat 。為了方便,可以設定別名

alias "bat=batcat"
使用方法
基本使用

  bat 命令的用法跟 cat 基本相同,除了輸出與 cat 一樣的文字內容之外,還能輸出包括行數、檔名、表格外框等元素。如果行數比較多,還可以使用 --line-range 來顯示指定行數的內容

語法高亮

  bat 對大部分程式語言和標記語言提供語法高亮,可讀性更強。

檢視所有支援的語言

bat --list-languages
Git 整合

  bat 能從 git 中獲取檔案的修改並展示在邊欄

顯示不可列印字元

有時候文字里有一些不可顯示的字元,如果使用 cat 命令檢視的話,將看不到這些字元。但如果使用 bat 命令,加上 -A 或者 -show-all 引數就能看到。

bat -A xxx.txt
自動翻頁功能

cat 命令不管文字大小全部顯示出來,使得在需要檢視內容比較多的文字檔案的時候,必須選擇其它命令(比如 more 、less 等等)。

bat 命令在文字內容超過一屏可顯示範圍時,就會將其傳送到 less 命令,然後就可以像使用 less 一樣進行翻頁操作。如果不想使用翻頁功能,可以使用 --paging=never 引數關閉。

主題定製

  bat 命令支援多種風格的語法高亮主題,可以滿足大部分需求。

檢視 bat 支援的所有主題

bat --list-themes

如果想指定主題為 GitHub ,可以使用以下命令

bat --theme=GitHub 檔名

但這樣做是臨時的,關閉終端工具或者系統重啟,主題就會恢復預設。可以通過設定 BAT_THEME 環境變數來選定主題。

把 export BAT_THEME="GitHub" 新增到   的啟動 來取得永久效果。除此之外,還可以自定義輸出樣式,甚至可以自己新增新的語言和語法,輸出讓自己滿意的高亮樣式。

原文來自:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2905898/,如需轉載,請註明出處,否則將追究法律責任。