Rust终端文件管理工具broot的使用,高效浏览和操作目录结构的Rust插件库

Rust终端文件管理工具broot的使用,高效浏览和操作目录结构的Rust插件库

Broot简介

Broot是一个更好的目录导航、文件查找和命令启动方式。它提供了高效的目录浏览和文件操作功能,比传统的tree命令更加实用。

主要功能

1. 获取目录概览

使用命令br -s可以快速查看目录结构。

Broot会自动处理.gitignore文件,隐藏不需要的文件。你可以使用快捷键:

  • alt+i 切换显示git忽略的文件
  • alt+h 切换显示隐藏文件

2. 查找并切换目录

输入几个字母快速查找目录。

alt+enter可直接切换到选中目录。

常用快捷键:

  • enter 返回上级目录
  • esc 返回上一状态或清除搜索
  • 移动选择
  • :qctrl+q退出

3. 文件搜索

Broot会智能选择最相关的文件,使用tab或方向键在不同匹配项间切换。

支持正则表达式搜索(在模式前加/)和内容搜索(在模式前加c/)。

4. 文件操作

Broot允许你在不丢失文件层次结构视图的情况下操作文件。

5. 面板管理

ctrl+→打开新面板,ctrl+←ctrl+→在面板间导航。

6. 文件预览

选中文件后按ctrl+→预览。

7. 替换ls命令

使用br -sdp显示文件大小、日期和权限。

8. 查看文件空间占用

使用--sort-by-size--sort-by-date排序,或-w查看空间占用。

9. Git状态检查

使用:gf查看文件状态或:gs查看git状态文件。

安装方法

全局安装

cargo install broot

作为库安装

在项目目录中运行:

cargo add broot

或在Cargo.toml中添加:

broot = "1.47.0"

技术详情

  • 版本: v1.79.0
  • 许可证: MIT
  • 大小: 1.43 MiB
  • 所有者: Denys Séguret

示例代码

// 这是一个简单的broot集成示例
use broot::config::Config;

fn main() {
    // 初始化broot配置
    let config = Config::default();
    
    // 设置自定义选项
    let mut config = config
        .with_show_hidden(true)  // 显示隐藏文件
        .with_show_gitignored(false);  // 不显示git忽略的文件
    
    // 启动broot
    if let Err(e) = broot::run(&mut config) {
        eprintln!("Error running broot: {}", e);
    }
}

完整示例代码

// 引入broot相关模块
use broot::{
    config::{Config, FileDisplayOptions},
    errors::ProgramError,
    launch::launch,
};

fn main() -> Result<(), ProgramError> {
    // 创建默认配置
    let mut config = Config::default();
    
    // 配置文件显示选项
    let file_display_options = FileDisplayOptions {
        show_hidden: true,      // 显示隐藏文件
        show_gitignored: false, // 不显示git忽略的文件
        ..Default::default()
    };
    
    // 设置文件显示选项
    config.file_display_options = file_display_options;
    
    // 配置排序方式
    config.sort_by = Some(broot::file_system::file_sum::FileSorting::ByName);
    
    // 配置颜色主题
    config.skin = Some(broot::skin::Skin::default_dark());
    
    // 启动broot
    launch(&mut config)?;
    
    Ok(())
}

Broot是一个功能强大且高效的终端文件管理工具,特别适合需要频繁进行文件操作和目录导航的开发人员使用。


1 回复

Rust终端文件管理工具broot的使用指南

介绍

broot是一个用Rust编写的终端文件管理器,它提供了高效浏览和操作目录结构的能力。broot的主要特点包括:

  • 快速导航文件系统
  • 直观的可视化文件树
  • 强大的搜索和过滤功能
  • 内置文件操作命令
  • 可定制的界面和快捷键
  • 与shell深度集成

broot特别适合需要在终端中频繁操作文件的开发者,它比传统的cdls组合更高效,比完整的文件管理器更轻量。

安装方法

使用cargo安装

# 使用Rust的包管理器安装
cargo install broot

各平台包管理器安装

# macOS使用Homebrew安装
brew install broot

# Ubuntu/Debian使用apt安装
sudo apt install broot

# Arch Linux使用yay安装
yay -S broot

基本使用

启动broot

# 使用br快捷命令启动
br

# 或者使用完整命令
broot

基本导航

  • 使用方向键或hjkl键导航
  • Enter进入目录
  • Backspace返回上级目录

搜索文件

输入字符即可实时搜索,支持模糊匹配。例如输入rs会匹配所有包含r和s的文件。

常用操作示例

1. 快速切换目录

# 带目录选择功能的启动方式
br -s

2. 查找并打开文件

# 查找并编辑配置文件
br --conf ~/my_conf.toml

3. 文件操作

在broot界面中:

# 移动文件
:mv new/path

# 复制文件
:cp destination/

# 删除文件
:rm

# 创建目录
:mkdir new_dir

# 创建文件
:touch new_file.txt

4. 预览文件

选中文件按space可以预览文件内容。

5. 显示隐藏文件

alt+h切换显示隐藏文件。

高级功能

自定义配置

broot的配置文件位于~/.config/broot/conf.toml,可以自定义快捷键、颜色主题等。

示例配置:

[skin]
default = "gray(20) / gray(3) gray(1)"
tree = "ansi(94) none / gray(20) gray(3)"
file = "gray(20) gray(1) / gray(20) gray(3)"
directory = "ansi(208) none bold / ansi(172) gray(3) bold"

与shell集成

# 安装shell集成
broot --install

使用正则表达式搜索

# 只显示Rust源文件
br --regex '\.rs$'

实用技巧

  1. 快速跳转:输入部分路径名快速跳转,如输入src/mai可以快速定位到src/main.rs

  2. 多选操作:使用alt+方向键选择多个文件,然后批量操作

  3. 文件统计:按:然后输入sz可以查看当前目录大小统计

  4. 历史记录:按ctrl+h查看浏览历史

  5. git集成:broot会自动显示git状态,不同的颜色表示文件状态

完整示例

下面是一个完整的broot使用示例,展示了从安装到常用操作的全流程:

# 1. 安装broot
cargo install broot

# 2. 安装shell集成
broot --install

# 3. 启动broot
br

# 在broot界面中:
# - 使用方向键导航到目标目录
# - 输入"src/main"快速定位到src/main.rs文件
# - 按空格键预览文件内容
# - 按alt+h显示隐藏文件
# - 输入":mkdir new_project"创建新目录
# - 选中多个文件后输入":cp ~/backup/"复制文件
# - 输入"br -s"快速切换工作目录

# 4. 高级搜索示例
br --regex '\.(rs|toml)$'

# 5. 自定义配置后重新加载
vim ~/.config/broot/conf.toml
# 添加自定义皮肤和快捷键后保存退出

broot通过其高效的交互方式和丰富的功能,可以显著提升开发者在终端中操作文件的效率,特别适合Rust开发者和其他经常使用命令行的程序员。

回到顶部