页次: 1
alias le=edit_select_locate "$@" #locate edit
function edit_select_locate
{
local file=$(locate /|fzf -q "$*")
[[ -e $file ]] && $EDITOR $file
}
我定义一个函数, 使用 locate 和 fzf 配合可以达到快速打开配置文件的效果,
可是这里有一个问题就是 locate / 会有许多干扰项目,例如 vim 里面的 undofile
文件格式如下
/home/lee/.emacs.d/.local/cache/undo-tree-hist/.!home!lee!.emacs.d!.local!straight!repos!org-bullets!org-bullets.el.~undo-tree~.zst
我想在fzf还没从管道接受数据前就过滤掉路径包含 undo-tree-hist 的路径
离线
man updatedb.conf
要过滤程序输出,用 grep -v。
离线
感谢大佬的提示,下面是我目前找到的方案
方法有下面几种
1. 通过 fzf -q "!undo-tree-hist keywords"
2. grep -v 过滤
3. updatedb --add-prunepaths /path
4. 编辑 updatedb.conf, 设置 PRUNEPATH 的值
离线
页次: 1