>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 嵌入式 安全
Rust

终端也能拖放?ripdrag 让这成为可能

想象这样一个场景:你在终端中工作,通过 findfzf 找到了需要的文件,现在想把它拖到图形应用程序中。通常你得打开文件管理器再找一遍……是不是很熟悉?开发者 nik012003 用 ripdrag 解决了这个问题。

什么是 ripdrag?

ripdrag 是一个命令行工具,能将你的终端变成拖放操作的源或目标。它使用 Rust 和 GTK4 构建,兼具速度与现代界面。

主要特性

  1. 从终端拖出文件 只需指定文件路径,ripdrag 就会创建一个窗口,让你能够将文件拖入任何图形应用程序:

    ripdrag /path/to/file.png
    
  2. 接收文件到终端 使用 -t 标志,ripdrag 就会变成一个拖放目标:

    ripdrag -t
    
  3. 模糊搜索集成 与 fzf 无缝配合,实现即时文件选择:

    ripdrag $(fzf)
    
  4. 灵活的显示设置 可自定义图标大小、禁用缩略图、仅显示文件名等。

技术细节

该项目是 dragon 工具的现代替代方案,但使用 Rust 和 GTK4 编写。这带来了:

  • 更好的性能
  • 现代化的界面
  • 跨平台支持(Linux、macOS)

实际应用

  1. 快速上传文件到 Web 应用 无需通过标准对话框查找文件——直接从终端拖出即可。

  2. 批量文件处理 通过 find/xargs 收集文件,然后一次性全部拖出。

  3. 配合图形编辑器使用 无需在文件管理器中导航,快速打开文件进行编辑。

安装

适用于大多数 Linux 发行版:

sudo apt install libgtk-4-dev build-essential curl
curl --proto '=https' --tlsv1.3 https://sh.rustup.rs -sSf | sh
cargo install ripdrag

Arch Linux 用户可以从 AUR 安装此包:

yay -S ripdrag-git

ripdrag 是一款一旦用过就离不开的工具,特别适合:

  • 经常在终端中工作的开发者
  • 系统管理员
  • 任何希望加快文件操作效率的人

该项目正在积极开发中,欢迎贡献代码。如果你觉得缺少某个功能——为什么不自己动手添加呢?

今天就试试 ripdrag,体验更流畅的文件管理吧!

相关项目