为什么我在 Linux 上使用 exa 而不是 ls?
![](https://linuxstory.org/wp-content/uploads/2024/06/101726h008fn6tttn4g6gt-800x400.jpg)
我们生活在一个繁忙的世界里,当我们需要查找文件和数据时,使用 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