為什麼我在 Linux 上使用 exa 而不是 ls?
我們生活在一個繁忙的世界裡,當我們需要查找文件和數據時,使用 ls
命令可以節省時間和精力。但如果不經過大量調整,默認的 ls
輸出並不十分舒心。當有一個 exa 替代方案時,為什麼要花時間眯著眼睛看黑白文字呢?
exa 是一個常規 ls
命令的現代替代品,它讓生活變得更輕鬆。這個工具是用 Rust 編寫的,該語言以並行性和安全性而聞名。
安裝 exa
要安裝 exa
,請運行:
$ dnf install exa
探索 exa 的功能
exa
改進了 ls
文件列表,它提供了更多的功能和更好的默認值。它使用顏色來區分文件類型和元數據。它能識別符號鏈接、擴展屬性和 Git。而且它體積小、速度快,只有一個二進位文件。
跟蹤文件
你可以使用 exa
來跟蹤某個 Git 倉庫中新增的文件。
![Tracking Git files with exa](/data/attachment/album/202103/26/101751cqw4iv3zt4qwww74.png "Tracking Git files with exa")
樹形結構
這是 exa
的基本樹形結構。--level
的值決定了列表的深度,這裡設置為 2。如果你想列出更多的子目錄和文件,請增加 --level
的值。
![exa's default tree structure](/data/attachment/album/202103/26/101751smisaiiu73wqjwiw.png "exa's default tree structure")
這個樹包含了每個文件的很多元數據。
![Metadata in exa's tree structure](/data/attachment/album/202103/26/101752lr2zqepcqp022lkk.png "Metadata in exa's tree structure")
配色方案
默認情況下,exa
根據 內置的配色方案 來標識不同的文件類型。它不僅對文件和目錄進行顏色編碼,還對 Cargo.toml
、CMakeLists.txt
、Gruntfile.coffee
、Gruntfile.js
、Makefile
等多種文件類型進行顏色編碼。
擴展文件屬性
當你使用 exa
探索 xattrs(擴展的文件屬性)時,--extended
會顯示所有的 xattrs。
![xattrs in exa](/data/attachment/album/202103/26/101752tjp2m14e42g7vjdm.png "xattrs in exa")
符號鏈接
exa
能識別符號鏈接,也能指出實際的文件。
![symlinks in exa](/data/attachment/album/202103/26/101753q2zzx6xh03vqvt32.png "symlinks in exa")
遞歸
當你想遞歸當前目錄下所有目錄的列表時,exa
能進行遞歸。
![recurse in exa](/data/attachment/album/202103/26/101753ltaahate7vh8tthw.png "recurse in exa")
總結
我相信 `exa 是最簡單、最容易適應的工具之一。它幫助我跟蹤了很多 Git 和 Maven 文件。它的顏色編碼讓我更容易在多個子目錄中進行搜索,它還能幫助我了解當前的 xattrs。
你是否已經用 exa
替換了 ls
?請在評論中分享你的反饋。
via: https://opensource.com/article/21/3/replace-ls-exa
作者:Sudeshna Sur 選題:lujun9972 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive