Lệnh 'bat' - Phiên bản clone của lệnh 'cat' với highlight cú pháp và tích hợp git

Bat là một bản sao của câu lệnh cat với cú pháp nâng cao cho nhiều ngôn ngữ lập trình và đánh dấu cú pháp markup, ngoài ra nó cũng tích hợp sẵn Git để hiển thị sự thay đổi trong tệp. Một số tính năng khác của nó bao gồm phân trang tự động, nối tệp, giao diện cho đánh dấu cú pháp và các kiểu hiển thị kết quả khác.

Ngoài ra, bạn cũng có thể thêm các định nghĩa cú pháp/ngôn ngữ mới, giao diện và thiết lập một trình phân trang tùy chỉnh. Trong bài viết này, chúng tôi sẽ chỉ bạn cách cài đặt và sử dụng một phiên bản Bat (bản sao của cat) trên Linux.

Cách cài đặt Bat (Bản sao của cat) trên Linux

Trên Debian và các bản phân phối Linux dựa trên Debian khác, bạn có thể tải xuống gói .deb mới nhất từ trang release, hoặc sử dụng lệnh wget sau để tải xuống và cài đặt như hiển thị bên dưới.

------------- On 64-bit Systems ------------- 
$ wget https://github.com/sharkdp/bat/releases/download/v0.15.4/bat_0.15.4_amd64.deb
$ sudo dpkg -i bat_0.15.4_amd64.deb

------------- On 32-bit Systems ------------- 
$ wget https://github.com/sharkdp/bat/releases/download/v0.15.4/bat_0.15.4_i386.deb
$ sudo dpkg -i bat_0.15.4_i386.deb

Trên Arch Linux, bạn có thể cài đặt từ kho dữ liệu Community, như hiển thị bên dưới.

$ sudo pacman -S bat

Sau khi cài đặt bat, chỉ cần chạy nó theo cách thông thường của câu lệnh cat, ví dụ, câu lệnh sau sẽ hiển thị nội dung tệp được chỉ định với đánh dấu cú pháp.

$ bat bin/bashscripts/sysadmin/topprocs.sh
Hiển thị tệp với Đánh dấu cú pháp

Để hiển thị nhiều tệp cùng một lúc, sử dụng câu lệnh sau.

$ bat domains.txt hosts
Hiển thị Nội dung Nhiều Tệp

Bạn chỉ có thể in ra một phạm vi dòng cụ thể (ví dụ in ra từ dòng 13 đến 24) cho một tệp hoặc mỗi tệp, sử dụng công tắc --line-range như hiển thị bên dưới.

$ bat --line-range 13:24 bin/bashscripts/sysadmin/topprocs.sh
In ra Phạm vi Dòng cụ thể

Để hiện tất cả các tên ngôn ngữ được hỗ trợ và các phần mở rộng tệp, sử dụng tùy chọn --list-languages.

$ bat --list-languages
Danh sách Các Ngôn ngữ được hỗ trợ cho Đánh dấu cú pháp

Sau đó, đặt một ngôn ngữ cụ thể cho đánh dấu cú pháp sử dụng công tắc -l.

$ bat -l Python httpie/setup.py
Thiết lập Ngôn ngữ cho Đánh dấu cú pháp

Bạn cũng có thể đọc từ stdin như trong ví dụ này.

$ ls -l | bat
Đọc từ Stdin Đầu ra

Để xem danh sách các chủ đề có sẵn cho đánh dấu cú pháp, sử dụng tùy chọn --list-themes.

$ bat --list-themes
Danh sách Các Chủ đề cho Đánh dấu cú pháp

Sau khi bạn đã chọn một chủ đề để sử dụng, kích hoạt nó bằng tùy chọn --theme.

$ bat --theme=Github

Lưu ý rằng các cài đặt này sẽ bị mất sau khi khởi động lại, để thay đổi trở nên vĩnh viễn, hãy xuất biến môi trường BAT_THEME trong tệp ~/.bashrc (cho người dùng cụ thể) hoặc tệp /etc/bash.bashrc (cho toàn hệ thống) bằng cách thêm dòng sau.

export BAT_THEME="Github"

Để chỉ hiển thị số dòng mà không có bất kỳ trang trí khác, sử dụng công tắc -n.

$ bat -n domains.txt hosts

Bat sử dụng "less" làm trình phân trang mặc định. Tuy nhiên, bạn có thể chỉ định khi nào sử dụng trình phân trang, với công tắc --paging và các giá trị có thể là *auto*, neveralways.
$ bat --paging always

Ngoài ra, bạn có thể định nghĩa trình phân trang sử dụng biến môi trường PAGER hoặc BAT_PAGER (ưu tiên trước) ở cùng cách với biến môi trường BAT_THEME, như đã giải thích ở trên. Thiết lập các biến này với giá trị trống sẽ vô hiệu hóa trình phân trang.

Để biết thêm thông tin về cách sử dụng hoặc tùy chỉnh bat, gõ man bat hoặc truy cập kho lưu trữ Github của nó: https://github.com/sharkdp/bat.

Tóm tắt

Bat là một bản sao của câu lệnh cat dễ sử dụng với đánh dấu cú pháp và tích hợp Git. Chia sẻ ý kiến của bạn về nó với chúng tôi qua mẫu phản hồi dưới đây. Nếu bạn đã gặp các tiện ích dòng lệnh CLI tương tự khác, hãy cho chúng tôi biết.