[TOC] #### 1.前言 --- ls 命令 linux 上最常用的命令之一,凡是接触过 linux 命令的,肯定使用过它 从来没想过有命令可以替代它,直到我发现 exa 命令,我们看下它有什么魔力 exa 官网:<https://the.exa.website> exa 是一个命令行工具,用于列出指定路径中的目录和文件,它的用途和 ls 命令相同,但比它功能更加丰富 #### 2.安装 --- 通过 brew 安装 ``` brew install exa ``` #### 3.参数 --- | 参数 | 描述 | | ------------ | ------------ | | --help | 查看所有参数选项 | | -a, --all | 查询所有文件(包含隐藏文件) | | -l, --long | 以竖向列表展示 | | -h, --header | 显示标题行 | | --git | 列出文件和目录被 git 跟踪的状态 | | --icons | 显示图标 | ``` # 查看所有参数选项 exa --help # 横向显示文件(不显示隐藏文件) exa # 横向显示所有文件(显示隐藏文件) exa -a # 竖向显示文件 exa -l # 竖向显示文件并显示标题行 exa -l -h # 竖向显示文件并列出 git 状态 exa -l --git # 推荐用法 exa -lha --git ```  #### 4.图标 --- exa 可以在文件名前面显示图标,使它们更容易区分。 如果图标显示乱码,如下图所示。问题原因:图标是特殊的 Unicode 符号,使用的字体要支持它 ``` exa --icons -l ```  [Nerd Fonts](https://www.nerdfonts.com/font-downloads) 常用来在终端下显示各种图标,这个项目的 github 提供了很多字体,在里面找喜欢的字体即可 推荐字体:FiraMono Nerd Font  只安装 FiraMono Nerd Font Propo 即可,另外两种字体系列的效果我不是很满意  设置 iTerm2 的默认字体为 FiraMono Nerd Font Propo,选择 Medium 最佳  最终效果如下图所示 ``` exa -lha --git --icons ```  #### 5.别名 --- 是不是觉得命令太长了,使用起来很不方便,定义命令别名就好啦 **Zsh 终端配置** ```bash # ~/.zshrc alias l="exa -lha --git --icons" ``` **Fish 终端配置** ```bash # ~/.config/fish/config.fish abbr --add l exa -lha --git --icons ```