You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让fzf的CTRL-T功能搜索指定的两个目录树(Gentoo Linux)

自定义fzf CTRL-T的搜索目录范围

要让fzf的CTRL-T功能仅搜索~/my/..和/usr/local/这两个目录树,最直接的方式是修改FZF_CTRL_T_COMMAND环境变量,替换它的默认搜索命令。

方法说明

fzf的CTRL-T快捷键默认会调用系统的find(或fd,如果已安装且优先级更高)遍历当前目录生成文件列表。通过定义FZF_CTRL_T_COMMAND,你可以指定自定义的搜索范围和规则。

具体配置步骤

  1. 打开~/.bashrc文件,在已有的fzf配置块中添加FZF_CTRL_T_COMMAND的定义:

    如果你的系统安装了fd(推荐,搜索速度更快),使用以下配置:

    export FZF_CTRL_T_COMMAND='fd --type f --hidden --follow --exclude ".git" ~/my/.. /usr/local/'
    

    如果没有fd,用find替代(兼容性更广):

    export FZF_CTRL_T_COMMAND='find ~/my/.. /usr/local/ -type f -not -path "*/\.*" 2>/dev/null'
    

    (注:如果需要包含隐藏文件,去掉find命令中的-not -path "*/\.*",或在fd命令中保留--hidden)

  2. 修改后的完整fzf配置片段示例:

    if [ -x "$(command -v fzf)"  ]
    then
        source /usr/share/fzf/key-bindings.bash
        # 自定义CTRL-T搜索目录:~/my/.. 和 /usr/local/
        export FZF_CTRL_T_COMMAND='fd --type f --hidden --follow --exclude ".git" ~/my/.. /usr/local/'
        # 无fd时使用find:
        # export FZF_CTRL_T_COMMAND='find ~/my/.. /usr/local/ -type f -not -path "*/\.*" 2>/dev/null'
    fi
    
    
    export FZF_DEFAULT_OPTS="
    --layout=reverse
    --info=inline
    --height=80%
    --multi
    --preview-window=:hidden
    --preview '([[ -f {} ]] && (bat --style=numbers --color=always {} || cat {})) || ([[ -d {} ]] && (tree -C {} | less)) || echo {} 2> /dev/null | head -200'
    --color='hl:148,hl+:154,pointer:032,marker:010,bg+:237,gutter:008'
    --prompt='∼ ' --pointer='▶' --marker='✓'
    --bind 'ctrl-p:toggle-preview'
    --bind 'ctrl-a:select-all'
    --bind 'ctrl-y:execute-silent(echo {+} | pbcopy)'
    --bind 'ctrl-e:execute(echo {+} | xargs -o vim)'
    --bind 'ctrl-v:execute(code {+})'
    "
    
  3. 保存文件后,执行以下命令使配置生效:

    source ~/.bashrc
    

效果验证

新开终端或重新加载bashrc后,按下CTRL-T,fzf就会只展示~/my/..和/usr/local/目录下的文件供你搜索选择。

内容的提问来源于stack exchange,提问作者Jonas Stein

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 21:01:53