王剑编程网

分享专业编程知识与实战技巧

告别繁琐!这款“鸭子”文件管理器,让你的终端飞起来!

告别繁琐!这款“鸭子”文件管理器,让你的终端飞起来!

还在用笨重的图形界面文件管理器?是时候拥抱终端的高效了!今天,我要给大家介绍一款名为 Yazi(没错,就是“鸭子”的谐音,听起来是不是很可爱?)的开源终端文件管理器,它将彻底颠覆你对终端文件管理的认知。

Yazi:一只飞速的“鸭子”

Yazi 是一款用 Rust 编写的终端文件管理器,基于非阻塞异步 I/O,旨在提供高效、用户友好且可定制的文件管理体验。想象一下,一只鸭子在你的终端里飞速穿梭,帮你轻松管理文件,是不是很酷?

核心亮点:

  • 全异步支持: 所有 I/O 操作都是异步的,CPU 任务分散在多个线程中,充分利用资源,告别卡顿。
  • 强大的异步任务调度: 实时进度更新、任务取消和内部任务优先级分配,让你对任务了如指掌。
  • 内置多种图像协议支持: 集成了 ü berzug++ 和 Chafa,几乎覆盖所有终端,图片预览不再是难题。
  • 内置代码高亮和图像解码: 结合预加载机制,大幅提升图像和普通文件的加载速度,效率飞起。
  • 并发插件系统: UI 插件、功能插件、自定义预览器/预加载器/搜索器/获取器,只需一些 Lua 代码即可实现,高度可定制。
  • 数据分发服务: 基于客户端-服务器架构(无需额外的服务器进程),集成 Lua 的发布-订阅模型,实现跨实例通信和状态持久化。
  • 包管理器: 一键安装插件和主题,保持更新或锁定特定版本,方便快捷。
  • 集成 ripgrep、fd、fzf 和 zoxide: 这些强大的工具让文件搜索和导航更加高效。
  • Vim 风格输入/选择/确认/通知组件: 路径自动补全,操作更加流畅。
  • 多标签页支持、跨目录选择、可滚动预览: 视频、PDF、压缩包、代码、目录等都能轻松预览。
  • 批量重命名、可视化模式、文件选择器、主题系统、鼠标支持、回收站、自定义布局、CSI u、OSC 52: 功能丰富,满足各种需求。

如何让“鸭子”飞起来?

安装

Yazi 的安装方式非常多样,几乎支持所有主流操作系统。以下是一些常见的安装方式:

  • Arch Linux:sudo pacman -S yazi ffmpeg p7zip jq poppler fd ripgrep fzf zoxide imagemagick
  • Nix:# NixOS nix-env -iA nixos.yazi # Not NixOS nix-env -iA nixpkgs.yazi
  • Homebrew (macOS):brew install yazi ffmpeg sevenzip jq poppler fd ripgrep fzf zoxide imagemagick font-symbols-only-nerd-font
  • Windows: 使用 Scoop:scoop install yazi # 安装可选依赖(推荐): scoop install ffmpeg 7zip jq poppler fd ripgrep fzf zoxide imagemagick 使用 WinGet:winget install sxyazi.yazi # 安装可选依赖(推荐): winget install Gyan.FFmpeg 7zip.7zip jqlang.jq sharkdp.fd BurntSushi.ripgrep.MSVC junegunn.fzf ajeetdsouza.zoxide ImageMagick.ImageMagick
  • 其他方式: 还可以通过官方二进制文件、Cargo、源码构建等方式安装,具体请参考官方文档。

温馨提示: 安装 Yazi 前,请确保你已经安装了 file 工具,并且最好安装一些可选的依赖,例如 ffmpeg、7-Zip、jq、poppler、fd、ripgrep、fzf、zoxide、ImageMagick 等,它们将使 Yazi 的功能更加强大。

使用

安装完成后,在终端输入 yazi 即可启动。

基本操作:

  • q:退出 Yazi
  • ~:打开帮助菜单
  • k / ↑:向上移动光标
  • j / ↓:向下移动光标
  • l / →:进入当前目录
  • h / ←:返回上一级目录
  • Space:切换选中/取消选中文件/目录
  • Enter:打开选中的文件
  • y:复制选中的文件
  • x:剪切选中的文件
  • p:粘贴复制/剪切的文件
  • d:将选中的文件放入回收站
  • a:创建文件(以 / 结尾创建目录)
  • r:重命名选中的文件
  • .:切换显示/隐藏文件

进阶操作:

  • 多标签页: t 创建新标签页,1-9 切换标签页,[ 和 ] 切换上/下一个标签页。
  • 文件搜索: s 使用 fd 按名称搜索,S 使用 ripgrep 按内容搜索。
  • 文件过滤: f 过滤文件。
  • 文件排序: , + m / M 按修改时间排序,, + b / B 按创建时间排序,, + e / E 按扩展名排序,, + a / A 按字母排序,, + n / N 按自然排序,, + s / S 按大小排序,, + r 随机排序。
  • 更多操作: 请参考官方文档和默认的 keymap.toml 文件。

Shell Wrapper:

为了在退出 Yazi 时能够切换到 Yazi 中浏览的目录,建议使用 Shell Wrapper。官方文档提供了 Bash/Zsh、Fish、Nushell、Elvish、PowerShell、Command Prompt 等多种 Shell 的 Wrapper 示例,请根据自己的 Shell 选择合适的 Wrapper。

总结

Yazi 是一款功能强大、高效且可定制的终端文件管理器,它能让你在终端中享受到便捷的文件管理体验。如果你厌倦了图形界面的繁琐,不妨试试这只飞速的“鸭子”,相信它会给你带来惊喜!

项目地址:
https://github.com/sxyazi/yazi

官方文档:
https://yazi-rs.github.io/docs/

#头条创作挑战赛##github##github##开源#

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言