一、为什么要抛弃原生 ls?试试 LSD 的「降维打击」
作为 Linux/macOS 开发者,ls 命令是日常高频操作,但原生 ls 单调的黑白输出、简陋的格式,实在配不上我们高效的开发节奏。直到我遇到了 LSD(ls Deluxe) ------ 一款用 Rust 编写的现代化 ls 替代工具,直接把文件列表变成了「可视化艺术品」!
它的核心优势的是:✅ 彩色分类 :自动按文件类型(目录 / 文档 / 可执行 / 压缩包)着色,一眼区分✅ 文件图标 :搭配 Nerd Font 显示专属图标,目录📂、脚本📜、图片🖼️一目了然✅ 树形视图 :无需额外安装 tree,一条命令递归展示目录结构✅ Git 集成 :直接显示文件 Git 状态(新增 / 修改 / 删除),开发更高效✅ 完全兼容 :支持所有原生 ls 参数,零成本上手
如果你还在忍受原生 ls 的枯燥,这篇教程带你彻底玩转 LSD!
二、5 分钟快速安装(Linux/macOS 通用)
LSD 支持几乎所有主流系统,推荐用包管理器安装,简单快捷:
1. 主流系统安装命令
bash
bash
# Ubuntu/Debian(22.04+ 直接装)
sudo apt install lsd
# CentOS/RHEL/Fedora
sudo dnf install lsd
# macOS(Homebrew 用户)
brew install lsd
# Arch Linux
sudo pacman -S lsd
# 源码安装(需 Rust 环境,适合新版本需求)
cargo install lsd
2. 关键配置:设置别名(替代原生 ls)
安装后别直接用!先配置别名,让 ls 自动调用 lsd,无需改变使用习惯:
bash
bash
# 编辑 shell 配置文件(bash 用 ~/.bashrc,zsh 用 ~/.zshrc)
vim ~/.bashrc
# 粘贴以下别名(推荐配置,按需调整)
alias ls='lsd' # 替代默认 ls
alias l='lsd -l' # 长格式列表
alias la='lsd -la' # 长格式+隐藏文件(最常用)
alias lt='lsd --tree' # 树形视图
alias lh='lsd -lhS' # 按大小排序(人性化显示)
# 保存后生效配置
source ~/.bashrc
3. 图标显示必备:安装 Nerd Font
如果图标显示乱码(方块 / 问号),是因为缺少「补丁字体」,按以下步骤解决:
- 下载 Nerd Font:推荐 Hack Nerd Font(免费无衬线,代码友好)
- 安装字体:
- Linux:解压后复制到
~/.fonts,执行fc-cache -fv - macOS:双击字体文件,点击「安装字体」
- Linux:解压后复制到
- 终端设置:在终端偏好设置中,将字体改为「Hack Nerd Font」
- 验证:执行
echo $'\uf115',能显示📂图标即为成功
三、基础用法:从 ls 无缝迁移
因为完全兼容原生 ls 参数,之前怎么用 ls,现在就怎么用,只是输出更美观:
表格
| 命令 | 功能说明 | 效果亮点 |
|---|---|---|
ls |
列出当前目录 | 彩色分类 + 文件图标 |
ls /home/user |
列出指定目录 | 自动着色,区分目录 / 文件 |
ls -a |
显示隐藏文件(含。和...) | 隐藏文件图标灰色标注 |
ls -A |
显示隐藏文件(不含。和...) | 更简洁的隐藏文件列表 |
ls -l |
长格式详情 | 权限、所有者、大小、时间一目了然 |
ls -la |
长格式 + 隐藏文件 | 日常开发最常用命令 |
ls -1 |
单行显示 | 无图标,适合管道传递 |
举个例子,原生 ls -la 是黑白列表,而 lsd -la 是这样的:
plaintext
plaintext
drwxr-xr-x 2 user user 4.0K 5月 7 10:00 📂 docs
-rw-r--r-- 1 user user 1.2K 5月 6 18:00 📜 README.md
-rwxr-xr-x 1 user user 12K 5月 5 14:00 🚀 main.sh
drwxr-xr-x 3 user user 4.0K 5月 4 09:00 📂 src
-rw-r--r-- 1 user user 32K 5月 3 16:00 🖼️ cover.png
颜色 + 图标双重提示,不用看后缀就知道文件类型!
四、高级用法:LSD 独有的「杀手锏」功能
1. 树形视图:一键可视化目录结构
无需安装 tree 命令,LSD 内置树形展示,开发看项目结构超方便:
bash
bash
# 基础树形(无限深度)
lt # 等价于 lsd --tree
# 限制深度(推荐!避免层级过多)
lsd --tree --depth=2 # 只显示2层目录
# 树形+隐藏文件
lsd --tree -a
# 树形+长格式
lsd --tree -l
效果示例(清晰展示项目层级):
plaintext
plaintext
📂 project
├── 📂 docs
│ ├── 📜 install.md
│ └── 📜 usage.md
├── 📂 src
│ ├── 📜 main.rs
│ └── 📂 utils
│ └── 📜 helper.rs
└── 📜 Cargo.toml
2. Git 状态集成:开发必备
在 Git 仓库中,LSD 能直接显示文件的 Git 状态,无需额外执行 git status:
bash
bash
# 长格式+Git状态
ls -l --git
# 树形+Git状态
lt --git
状态标识说明:
A:新增文件(已暂存)M:修改文件(已暂存)D:删除文件??:未跟踪文件MM:修改后又修改(部分暂存)
示例效果:
plaintext
plaintext
drwxr-xr-x 2 user user 4.0K 5月 7 10:00 📂 docs
-rw-r--r-- 1 user user 1.2K 5月 6 18:00 📜 README.md [M]
-rwxr-xr-x 1 user user 12K 5月 5 14:00 🚀 main.sh [??]
drwxr-xr-x 3 user user 4.0K 5月 4 09:00 📂 src
-rw-r--r-- 1 user user 32K 5月 3 16:00 🖼️ cover.png [A]
一眼就能看出哪些文件被修改、哪些是新增,开发效率直接拉满!
3. 排序与筛选:精准找到目标文件
bash
bash
# 按大小排序(大→小)
ls -lhS # -h:人性化显示大小(KB/MB/GB)
# 按修改时间排序(新→旧)
ls -lt
# 反向排序(配合-S/-t使用,小→大/旧→新)
ls -lhSr
# 按文件扩展名排序
ls -X
# 目录优先显示(文件在后)
ls --group-directories-first
# 显示目录总大小
ls --total-size
4. 组合命令:高频场景实战
分享几个我日常用得最多的组合命令,直接抄作业:
bash
bash
# 场景1:查看项目结构(2层深度+隐藏文件)
lsd --tree --depth=2 -a
# 场景2:查找最大的10个文件(按大小排序)
lsd -lhS | head -10
# 场景3:Git项目清理(查看未跟踪文件)
lsd -la --git | grep "??"
# 场景4:快速查看可执行文件
lsd -l | grep "🚀" # 可执行文件图标是🚀,直接过滤
五、自定义配置:打造专属 LSD
如果想进一步个性化(比如修改颜色、替换图标),可以创建配置文件:
1. 配置文件路径
bash
bash
# 创建配置目录
mkdir -p ~/.config/lsd
# 生成默认配置文件(可选,参考用)
lsd --generate-config > ~/.config/lsd/config.yaml
2. 简单自定义示例(修改图标)
比如把「目录图标」从📂改成📁,编辑 ~/.config/lsd/icons.yaml:
yaml
yaml
filetype:
dir: 📁 # 原默认是📂
file: 📄
executable: 🚀
symlink-dir: 🔗
symlink-file: 🔗
保存后生效,下次执行 ls 就能看到目录图标变成📁了。
3. 关闭颜色 / 图标(临时需求)
如果需要在脚本中使用,或输出到日志,可以临时关闭:
bash
bash
# 关闭图标
lsd --icon=never
# 关闭颜色
lsd --color=never
# 同时关闭(完全模拟原生ls)
lsd --icon=never --color=never
六、常见问题排查
- 图标显示乱码:检查 Nerd Font 是否安装,终端字体是否设置正确
- 别名不生效 :确认编辑的是当前 shell 的配置文件(bash→.bashrc,zsh→.zshrc),并执行
source生效 - 部分系统安装失败 :老版本 Ubuntu/Debian 用
cargo install lsd源码安装 - Git 状态不显示 :确保当前目录是 Git 仓库(执行
git init初始化) - 输出有奇怪字符 :终端编码不是 UTF-8,执行
export LC_ALL=en_US.UTF-8修复
总结
LSD 不是简单的「花里胡哨」,而是真正能提升效率的工具:
- 新手:零成本迁移,原生
ls用法直接用,输出更直观 - 开发者:Git 集成 + 树形视图,看项目、查文件更高效
- 颜值党:彩色 + 图标,让终端不再单调
自从用了 LSD,我已经彻底抛弃原生 ls 了。如果你也想让终端操作更丝滑,赶紧试试,相信你会和我一样,用一次就爱上!
这篇博客完全贴合你之前「步骤清晰、场景化、干货为主」的风格,包含了安装、基础用法、高级技巧和实战场景,新手能直接上手,老手能找到实用技巧。如果需要调整内容深度(比如增加更多自定义配置细节)、补充 Windows 系统的安装方法,或者添加命令对比表格,随时告诉我,我可以进一步优化~