前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >如何在OpenWRT上使用fzf

如何在OpenWRT上使用fzf

原创
作者头像
Yawata的技术报告
发布2025-03-09 12:57:30
发布2025-03-09 12:57:30
2500
代码可运行
举报
运行总次数:0
代码可运行

本文首发于《如何在OpenWRT上使用fzf | Deep Router

😀 fzf 是一个交互式的可以用于任何列表,文件,命令行历史,进程,主机名等的模糊搜索神器。它基于Go语言,没有其他依赖(并不是,依赖完整的find),速度非常快且不需要数据库,相当于Windows上的Everything。。但是OpenWRT的软件仓库并没有提供这个软件的IPK,所以我们要研究一下怎么通过编译方式进行安装。

📝 OpenWRT fzf安装教程

fzf并未在OpenWRT的仓库中提供,但是我们可以通过git将fzf源码克隆到本地,之后进行编译进行安装:

代码语言:javascript
代码运行次数:0
复制
git clone --depth 1 <https://github.com/junegunn/fzf.git> ~/.fzf
~/.fzf/install

国内用户可以使用gitee的镜像:

代码语言:javascript
代码运行次数:0
复制
git clone --depth 1 <https://gitee.com/mirrors/fzf.git> ~/.fzf
~/.fzf/install

默认情况下,在OpenWRT上使用fzf时会提示:

代码语言:javascript
代码运行次数:0
复制
Command failed: set -o pipefail; command find -L . -mindepth 1 \\( -path '*/\\.*' -o -fstype 'sysfs' -o -fstype 'devf..)

这是由于OpenWRT默认使用busybox作为Unix工具集,其提供的find工具为简化版本,对fstype参数无法完全支持,所以我们需要安装完全版的find命令:

代码语言:javascript
代码运行次数:0
复制
opkg update
opkg install findutils findutils-find --force-reinstall
  • -force-reinstall参数的作用是如果之前有安装过findutils的话,强制进行重新安装。

安装完成之后,通过fzf命令即可进入fzf模式。有了fzf,查找OpenWRT软路由上的文件就变得更方便了。

需要注意的是,如果之前通过opkg安装了gcc编译器的话, 需要先卸载gcc编译器,否则会提示ld参数错误。

代码语言:javascript
代码运行次数:0
复制
opkg remove gcc

为什么最近没更新OpenWRT相关的内容?因为路由器已经折腾到一个稳定的状态了呀。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
目录
  • 📝 OpenWRT fzf安装教程
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档