这些简单的功能已经可以满足一半的日常搜索需求了 , 接下来我们看看fd 提供的更高级的搜索选项吧!
四、高级搜索选项4.1 按深度选项-d 或 --max-depth <depth> , 当前路径算深度 1 , dir3 下面的 rs 文件就是深度 4 了 。
4.2 按文件类型选项-t 或 --type <filetype> , fd 提供了以下几种 filetype 选项:
- f:file
- d:directory
- l:symlink
- x:executable
- e:empty
- s:socket
- p:pipe
可以看到所有的 rust、rs、sss、soft 都没有出现在结果集中 。
4.5 按所有者选项-o 或 --owner <user:group>
或者fd -l -o junjiexun:staff 也可以达到同样的效果 , 但是 fd 不支持单独搜索 group , 也不支持通配符 , 如果你有想法的话可以给他提 issue 哦~
4.6 组合命令fd 提供了 -x 或 --exec <cmd>、-X 或 --exec-batch <cmd> 来进行对搜索结果集的进一步处理
找到所有和 java 匹配的内容并且删除!(仅仅用做演示 , rm -rf 慎用)
$ fd java -X rm -rf找到所有的 py 并且通过 vim 打开
$ fd py -X vim还可以使用诸如unzip、ls、convert 等等其他常用的命令 , 也可以直接使用 *unix 语法 | 管道符语法进一步处理 。
4.7 正则表达式对于文件的内容搜索 , 我之前演示的是诸如 Hello、java、py 都是这样的完整文本 , 实际fd 默认就是支持正则表达式对内容进行搜索的 , 但是正则表达式需要使用单引号 ' 包裹起来 , 我下面演示:将所有 s 开头的文件都能被搜索出来 。
上面的选项大部分都是可以同时使用的 , 篇幅有限我这里就不继续演示了 。
五、总结fd 是一个简单友好的命令行文件搜索工具 , 而且其开源的属性作为 Rust 源码学习的对象也是非常优秀的 , 赶紧学起来!觉得本文还不错的话 , 转评赞走一波!
相关经验推荐
- vivo x note|618即将到来,盘点上半年最强安卓机皇,国产仅一款入选!
- |如果说你打算入手一款千元机自己用,意味着什么?
- realme|USB4诞生2年半:终于迎来全球第一款主控
- 液晶显示器|2000以内可以买到的骁龙870手机,一款是LCD屏幕,另一款很均衡
- https|3款不为人知的黑科技软件,每一款都良心十足
- CPU|盘点12+256GB的千元机,每款性价比都很高,最后一款配置很离谱
- 平板电脑|为什么说上班族需要一款平板电脑?平板对于上班族有什么作用?
- 华为荣耀|2K元买高颜值手机,这四款务必一看,必有一款符合你需求!
- 高通骁龙|什么才叫旗舰芯?一款高端旗舰芯的修炼
- 摄像头|DJI Avata 一款用于电影FPV拍摄的新款CineWhoop无人机
