首页 > 其他 > 详细

使用find根据文件内容查找文件名

时间:2018-07-21 00:37:27      阅读:477      评论:0      收藏:0      [点我收藏+]

find命令用法:

  • 语法:
1 find (选项) (参数)
  • 常用选项:
1 -exec<执行命令>: 假设find指令的回传值为True,就执行该指令;
2 -ls: 假设find指令的回传值为True,就将文件或目录名称列出到标准输出;
3 -name<范本样式>: 指定字符串作为寻找文件或目录的范本样式;
4 -path<范本样式>: 指定字符串作为寻找目录的范本样式;
5 -size<文件大小>: 查找符合指定的文件大小的文件;
6 -type<文件类型>: 只寻找符合指定的文件类型的文件; 
  • 参数:起始目录--查找文件的起始目录
  • 实例:

列出当前目录及子目录下的所有文件和文件夹

1 find .

在/home目录下查找以.txt结尾的文件名(使用 -iname 选项忽略大小写)

1 find /home -name "*.txt"

在当前目录及子目录下查找所有以.txt和.pdf结尾的文件名

1 find . -name "*.txt" -o -name "*.pdf"

匹配文件路径或者文件

1 find /usr/ -path "*local*"

基于正则表达式匹配文件路径 (-iregex 忽略大小写)

1 find . -regex ".*\(\.txt\|\.pdf\)$"

否定参数:找出/home下不是以.txt结尾的文件

1 find /home ! -name "*.txt"

根据文件类型查找

1 find . -type 类型参数

类型参数列表:

f 普通文件

l 符号链接

d 目录

c 字符设备

b 块设备

s 套接字

p Fifo

根据文件大小查找

1 find . -size 文件大小单元

文件大小单元列表:

b 块(512字节)

c 字节

w 字(2字节)

k 千字节

M 兆字节

G G字节

查找大于10k的文件

1 find . -size +10k

借助 -exec 选项与其他命令结合使用

找出/home目录下所有的.txt文件并删除 (-ok与-exec命令相同,但会给出提示是否执行相应操作)

1 find /home -name ".txt" -exec rm {} \;

用脚本执行多条指令

1 -exec ./rm_txt.sh {} \;

使用xargs工具

查找包含字符‘abc‘的文件名

1 find . -type f | xargs grep -l abc

 

使用find根据文件内容查找文件名

原文:https://www.cnblogs.com/czxbeyond/p/9344725.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!