fzf的使用广泛,尤其是vim的使用当中,这里只是简单配置在linux命令行中的使用方法进行介绍:

一、安装

这里安装是使用的源码安装,除此之外,还可以使用命令进行安装apt install fzf,源码安装命令如下:

git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install

值得注意的是 即使使用源码安装也是需要连接网络,需要下载依赖包

zhaoky@zhaoky:~/test/fzf$ ./install
Downloading bin/fzf ...- Found in $PATH- Creating symlink: bin/fzf -> /usr/bin/fzf- Checking fzf executable ... 0.17.5 != 0.33.0% Total    % Received % Xferd  Average Speed   Time    Time     Time  CurrentDload  Upload   Total   Spent    Left  Speed0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (6) Could not resolve host: github.comgzip: stdin: unexpected end of file
tar: Child returned status 1
tar: Error is not recoverable: exiting now
--2022-09-12 18:42:33--  https://github.com/junegunn/fzf/releases/download/0.33.0/fzf-0.33.0-linux_amd64.tar.gz
正在解析主机 github.com (github.com)... 失败:域名解析暂时失败。
wget: 无法解析主机地址 “github.com”gzip: stdin: unexpected end of file
tar: Child returned status 1
tar: Error is not recoverable: exiting now- Failed to download with curl and wget !!!
go executable not found. Installation failed.

升级:

cd ~/.fzf && git pull && ./install

二、布局

在网上有众多的配置方式和方法,但对我而言仅仅需要在搜索文件的过程中也能对文件内容进行预览即可,同时也不需要占用过多的界面,因此,我在配置过程中布局仅有对预览窗口的大小设置和文件搜索预览窗口两个简单的功能。

fzf默认全屏模式,你可以定制高度

vim $(fzf --height 40%)

你可以通过$FZF_DEFAULT_OPTS来设定默认值

export FZF_DEFAULT_OPTS='--height 40% --reverse --border'

三、预览窗口

如果使用--preview选项, fzf会自动用外部程序打开现在条目的文件, {}会被fzf选中行内容代替

fzf --preview 'cat {}'

建议安装rougify(先安装ruby, 然后gem intall rouge)
然后在.zshrc里用函数或别名,如果使用bash,那么修改的文件为.bashrc

fzfp() {
fzf --preview '[[ $(file --mime {}) =~ binary ]] && echo {} is a binary file || (rougify {}  || highlight -O ansi -l {} || coderay {} || cat {}) 2> /dev/null | head -500'
alias tt='fzf --preview '"'"'[[ $(file --mime {}) =~ binary ]] && echo {} is a binary file || (rougify {}  || highlight -O ansi -l {} || coderay {} || cat {}) 2> /dev/null | head -500'"'"}

四、效果

1、输入fzf

2、输入fzfp

五、离线下载

如果环境是离线的环境,可能需要将fzf进行离线下载后进行安装,安装教程如下:

https://blog.csdn.net/weixin_43958105/article/details/119531279

Linux下搜索神器fzf的配置和使用相关推荐

  1. 命令行搜索神器fzf

    文件搜索神器fzf,名气很大,很快,很强大. fzf 是一个通用的命令行模糊查找器. 它是一个交互式 Unix 命令行过滤器,可用于任何列表:文件.命令历史.进程.主机名.书签.git 提交等. 项目 ...

  2. Linux下mysql支持中文,linux下mysql环境支持中文配置步骤

    sql脚本执行前加上: CREATE DATABASE IF NOT EXISTS mydatabase DEFAULT CHARSET utf8 COLLATE UTF8_GENERAL_CI; u ...

  3. Linux下samba的安装与配置

    physique 博客园 首页 新随笔 联系 管理 订阅 随笔- 203  文章- 0  评论- 33 Linux下samba的安装与配置 转载来源:http://blog.chinaunix.net ...

  4. LibOpenCM3(一) Linux下命令行开发环境配置

    目录 LibOpenCM3(一) Linux下命令行开发环境配置 LibOpenCM3(二) 项目模板 Makefile分析 LibOpenCM3(三) .ld文件(连接器脚本)和startup代码说 ...

  5. Linux下Nagios的安装与配置

    Linux下Nagios的安装与配置 2017-03-23 17:40:20     来源:    点击:0 Nagios是企业普遍使用的最具影响力的网络信息监视系统之一,它可以动态监视指定的网络状态 ...

  6. Linux下MySQL数据库主从同步配置

    操作系统:CentOS 6.x 64位 MySQL数据库版本:mysql-5.5.35 MySQL主服务器:192.168.21.128 MySQL从服务器:192.168.21.129 准备篇: 说 ...

  7. linux下jdk的安装与配置jdk-6u45-linux-i586.bin

    linux下jdk的安装与配置 一.安装JDK从sun网站上直接下载JDK:http://download.oracle.com/otn-pub/java/jdk/6u45-b06/jdk-6u45- ...

  8. linux 安装cvs,linux下cvs详细安装和配置.docx

    Linux 下cvs详细安装和配置 2009-03-18 14:37:12 标签:[推送到技术圈] 版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始岀处 作者信息和本声明.否则将追究 ...

  9. Linux下搜索文件

    一.Linux下搜索文件的命令 Which 显示Linux某个命令的完整路径.加上type可以检查是内部命令还是外部命令 [root@linuxtest /]# which cat /bin/cat ...

最新文章

  1. 隐马尔科夫模型HMM(一)HMM模型
  2. 阿里巴巴笔试题-马尔科夫(HMM)的特征
  3. sqlog连接虚拟机mysql问题
  4. 『求助』请求服务器超时或失败问题
  5. easyui dialog 中嵌入html页面
  6. Apache ZooKeeper - ZK的数据和文件
  7. 网络:.cookie和session原理及区别
  8. 2019 湖南多校第五场题解
  9. JUnit 5 –下一代JUnit的初步了解
  10. CSS3中使用translate() 方法实现元素位置的移动
  11. oracle中游标的使用
  12. vertex 3.0 与SpringBoot混合开发之初探
  13. 【前端性能优化】不用 setTimeout 实现防抖
  14. 浅议“全局变量”、“多线程”和“编译器陷阱”
  15. ArcGIS GDB中要素类不可编辑
  16. oracle strsplit函数,oracle splitstr 函数
  17. 上海图书馆e卡通阅读器差强人意
  18. 人脸对齐—3DDFA
  19. centos7时间校准
  20. c语言中整型32768输出是多少,c语言中不合法的整型常数是32768为什么 – 手机爱问...

热门文章

  1. 亚商投资顾问 早餐FM/1208加快推进ICU病房建设
  2. 手机版电台功能php源码,android音乐电台APP源码(客户端+服务端)
  3. trello使用技巧:如何在 trello 删除 board
  4. 解释型语言与编译型语言的异同
  5. 《图解设计模式》-各章节的划分/学习设计模式之前
  6. 生成中文带生僻字的名字
  7. linux设置开机自启动(开机启动项)(chkconfig)
  8. mysql逻辑不相等_MySQL 运算符_MySQL 算术运算符_MySQL 比较运算符_MySQL 逻辑运算符 - 树懒学堂...
  9. linux 安装pyodbc 报错
  10. Navigation导航寻路RecastDemo讲解