用fzf和xargs把模糊搜索到的全部文件复制到指定文件夹
专栏:偷懒小技巧 March 19, 2026, 11:20 a.m. 11 阅读
如何把目录下的含特殊名字的pdf,全部复制到一个新文件夹中?

如何把目录下及子目录下的含特殊名字的pdf,全部复制到一个新文件夹中?

直接上命令:

# 新建一个目标文件夹
mkdir -p /home/user/newdir
# 搜索和复制
fzf -m --print0 | xargs -0 -I {} cp -v {} /home/user/newdir

执行这个命令之后,会弹出fzf的搜索界面。输入关建字,比如“xxx pdf$”,按tab选中多个文件后,按回车。这些pdf就全部复制到指定的文件夹里了。

如果pdf文件很多,不想按tab一个一个的选中文件,也可以用fzf的--bind参数,用ctrl-a来全选。如下。

fzf -m --bind 'ctrl-a:select-all,ctrl-d:deselect-all' --print0 | xargs -0 -I {} cp -v {} /home/user/newdir

如果想永久配置全选快捷键,可以加到环境变量里。

#bash,zsh
export FZF_DEFAULT_OPTS="--bind 'ctrl-a:select-all,ctrl-d:deselect-all'"
#csh,tcsh
setenv FZF_DEFAULT_OPTS "--bind 'ctrl-a:select-all,ctrl-d:deselect-all'"
感谢阅读,更多文章点击这里:【专栏:偷懒小技巧】
最新20篇 开设专栏