霸氣!開源項(xiàng)目名字就叫BAT,具有語(yǔ)法高亮的Cat類命令
在類Unix系統(tǒng)中,“ cat”命令用于打印和連接文件。使用cat命令,我們可以將文件的內(nèi)容打印到標(biāo)準(zhǔn)輸出中,將多個(gè)文件合成為一個(gè)目標(biāo)文件,然后將幾個(gè)文件附加到目標(biāo)文件中。
近日,我偶然發(fā)現(xiàn)了一個(gè)名為“ Bat”的實(shí)用程序,一聽這名字是不是就覺(jué)得有點(diǎn)高端大氣上檔次。
其實(shí),它是cat命令的克隆,有很多很酷的功能,例如語(yǔ)法高亮,git集成和自動(dòng)分頁(yè)等。目前,bat在Github上標(biāo)星21.7K,累計(jì)分支463(Github地址:https://github.com/sharkdp/bat)
功能特性
(1) 語(yǔ)法高亮顯示
bat支持大量編程和markup語(yǔ)言的語(yǔ)法高亮顯示:
(2) Git集成
bat與git溝通,顯示關(guān)于修改的索引 (參見(jiàn)左側(cè)欄) :
(3) 自動(dòng)分頁(yè)
當(dāng)文件的輸出對(duì)于屏幕來(lái)說(shuō)太大的時(shí)候,bat 命令自動(dòng)將自己的輸出內(nèi)容傳輸?shù)?less 命令中,所以你可以一頁(yè)一頁(yè)的查看輸出內(nèi)容。
2. 如何使用bat
Bat可以直接在終端顯示單個(gè)文件:
- > bat README.md
一次顯示多個(gè)文件:
- > bat src/*.rs
從stdin讀取,自動(dòng)確定語(yǔ)法,通常通過(guò)諸如shebang來(lái)確定#!/bin/sh:
- > curl -s https://sh.rustup.rs | bat
從標(biāo)準(zhǔn)輸入中讀取,明確指定語(yǔ)言:
- > yaml2json .travis.yml | json_pp | bat -l json
高亮無(wú)法輸出的字符:
- > bat -A /etc/hosts
作為cat的替代品:
- bat > note.md # quickly create a new file
- bat header.md content.md footer.md > document.md
- bat -n main.rs # show line numbers (only)
- bat f - g # output 'f', then stdin, then 'g'.
關(guān)于bat的安裝方式也有很多種,你可以在Arch Linux的默認(rèn)軟件源中獲取,在 Debian、Ubuntu、Linux Mint等系統(tǒng)中,從其發(fā)布頁(yè)面下載 .deb 文件,然后用通過(guò)指定命令安裝。如果是其他系統(tǒng)你也可以從軟件源編譯安裝,具體查看項(xiàng)目說(shuō)明詳情。
最后附上中文翻譯的bat項(xiàng)目地址:https://github.com/chinanf-boy/bat-zh