当前位置: 首页 > news >正文

【GitHub项目推荐--Yazi:极速异步终端文件管理器】⭐⭐⭐⭐⭐

简介

Yazi(中文意为“鸭子”)是一款由 Rust 语言编写的现代化终端文件管理器。它采用完全异步的 I/O 架构,旨在解决传统文件管理器(如 Ranger)在处理大量文件或高分辨率图像预览时的性能瓶颈。Yazi 不仅速度快,还提供了丰富的预览功能、强大的插件系统以及直观的 Vim 风格键位绑定,是开发者和系统管理员提升终端工作效率的利器。

主要功能

  • 全异步架构:所有文件 I/O 操作和 CPU 密集型任务(如压缩、解压、搜索)均在后台线程池中执行,UI 界面始终保持流畅响应,无卡顿感。

  • 智能预览:内置对图像、视频、PDF、Office 文档、代码文件(带语法高亮)的预览支持。通过集成 Kitty、iTerm2、Sixel 等终端图像协议,可直接在终端内显示图片缩略图,无需启动外部程序。

  • 三栏式布局:采用经典的 Miller Columns 布局,左侧显示父目录,中间显示当前目录列表,右侧实时预览选中文件的内容。

  • 集成生态:无缝集成fd(文件查找)、ripgrep(内容搜索)、fzf(模糊搜索)、zoxide(目录跳转)等现代命令行工具,提供极致的搜索与导航体验。

  • Lua 插件系统:支持通过 Lua 脚本自定义 UI 组件、预览器、文件操作逻辑,社区拥有丰富的主题和功能插件。

  • 虚拟文件系统(VFS):支持挂载远程服务器(SFTP)和压缩包,在单一界面中统一管理本地与远程文件。

  • 任务管理器:内置后台任务监控面板,可实时查看文件复制、移动、删除的进度,并支持取消正在进行的任务。

安装与配置

安装方法

使用 Cargo(推荐)

确保已安装 Rust 工具链,执行cargo install yazi --locked

使用包管理器

  • macOSbrew install yazi

  • Arch Linuxyay -S yazi(AUR)

  • NixOSnix-env -iA nixos.yazi

配置说明

Yazi 的配置文件位于~/.config/yazi/目录下,采用 TOML 格式。首次启动后,建议复制默认预设配置:

mkdir -p ~/.config/yazi cp -r /path/to/yazi/yazi-config/preset/* ~/.config/yazi/

核心配置文件包括:

  • yazi.toml:主配置,设置界面比例、排序规则、预览规则等。

  • keymap.toml:快捷键映射,支持 Vim 模式或自定义键位。

  • theme.toml:主题配色方案。

关键配置项:在yazi.toml中设置[open]规则,定义不同 MIME 类型文件的打开方式(如使用nvim打开文本文件)。

如何使用

启动命令为yazi。建议在 Shell 配置(如.zshrc)中添加包装函数,实现“退出 Yazi 后自动切换到当前目录”的功能。

基础操作(Vim 键位)

  • 导航j/k上下移动,h返回上级目录,l进入目录/打开文件。

  • 选择Space选中文件,v全选,y复制,x剪切,p粘贴,d删除到回收站。

  • 搜索f调用fd搜索文件名,S调用rg搜索文件内容。

  • 跳转z调用zoxide跳转到常用目录。

  • 预览:选中文件后,右侧面板自动显示内容。使用[/]在预览中上下滚动。

高级操作

  • 批量重命名:选中多个文件后按R,进入批量重命名模式。

  • 任务管理:按w打开任务管理器,查看后台任务进度。

  • 挂载远程:输入:mount sftp://user@host/path挂载远程服务器。

应用场景实例

实例 1:快速清理下载目录

用户进入~/Downloads目录,面对数百个杂乱的文件。使用f键输入*.mp4快速筛选出所有视频文件,按v全选,再按d一键删除。整个过程无需等待文件列表加载,界面响应即时。

实例 2:代码项目文件查找

开发者需要在一个大型 Rust 项目中查找所有包含serde导入的.rs文件。在项目根目录按S,输入use serde,Yazi 瞬间列出所有匹配文件。选中文件后,右侧预览窗格直接高亮显示匹配行,无需打开编辑器即可确认内容。

实例 3:服务器日志分析

通过 SFTP 挂载生产服务器日志目录。在终端内直接浏览.log文件,利用内置语法高亮快速定位 ERROR 级别的日志行。对于压缩的.gz日志包,Yazi 自动将其识别为虚拟目录,可直接进入查看内部文件结构,无需手动解压。

GitHub 地址

项目仓库:https://github.com/sxyazi/yazi

http://www.cnnetsun.cn/news/1391795.html

相关文章:

  • 颠覆传统显示:3种虚拟显示驱动技术提升效率60%
  • AI全身全息感知Holistic Tracking:5分钟快速部署,小白也能玩转543个关键点检测
  • 别再堆砌“张三说、李四讲”!百考通帮你写出有脉络、有批判的高质量综述
  • 零基础玩转AI修图:Qwen-Image-2512-ComfyUI快速上手指南
  • STM32CubeMX实战:5个HAL库/LL库常见BUG及修复方案(附代码)
  • 基于Git-RSCLIP的遥感图像风格迁移应用
  • 杰理之连接的设备暂停一段时间再播放dac概率卡顿【篇】
  • 3步彻底解决魔兽争霸3帧率卡顿:WarcraftHelper实战优化指南
  • Terragrunt生态系统:插件与扩展功能全解析
  • GitHub Linguist数据可视化:语言分布图表生成终极指南 [特殊字符]
  • Nanbeige 4.1-3B镜像免配置教程:预编译Whl包加速安装流程
  • Nanbeige 4.1-3B快速部署:基于NVIDIA Container Toolkit的GPU直通配置
  • 简单的停车场管理系统的C语言实现示例
  • Z-Image-GGUF在工业检测中的应用:生成缺陷样本扩充数据集
  • 5步掌握Beyond Compare 5密钥生成:从诊断到实战的完整技术指南
  • Qwen3-32B-Chat百度搜索高频词覆盖:开源大模型部署教程+GPU算力适配
  • 如何高效处理文件系统操作:GitHub_Trending/ch/checkout的FsHelper错误处理机制详解
  • Clawdbot企业微信联动实战:采购单自动审查,AI嵌入工作流真实案例
  • InstructPix2Pix与软件测试:自动化测试图像生成
  • Realistic Vision V5.1 计算机基础关联:从计算机组成原理看GPU算力对扩散模型的意义
  • skill-icons完全指南:从入门到精通,打造专业级GitHub技能展示区
  • 老男孩92期Linux云运维工程师课程,视频无水印,资料无密码,还送配套VMware、Xshell工具。内容包括Linux初级到高级、ES、Docker、K8S、Prometheus、Ceph等完整课
  • 解决Python包安装报错:ERROR: No matching distribution found for xxx的实用指南
  • 如何使用Fuzzywuzzy实现电信行业用户号码相似性检索的终极指南
  • 书匠策AI:文献综述的“智能导航仪”,开启学术写作新纪元!
  • Llama-3.2V-11B-cot 效果对比评测:多模态理解能力超越传统方案的案例
  • Meixiong Niannian画图引擎参数详解:随机种子-1的多样性熵值与采样分布
  • 数据修改后悔药:Dasel安全操作指南与错误恢复终极方案 [特殊字符]
  • 终极指南:如何将spy-debugger与Webpack集成实现开发环境调试优化
  • Qwen-Image-2512+Pixel Art LoRA效果对比:与Stable Diffusion Pixel插件差异分析