查找目录下的所有文件中是否含有某个字符串

find .|xargs grep -ri "IBM"

查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名

find .|xargs grep -ri "IBM" -l

(1)find命令的一般形式

find pathname -options [-print -exec -ok]

pathname :find命令所查找的目录路径。如用"."来表示当前的目录,用/来表示系统根目录

-print :find命令将匹配的文件输出到标准输出

-exec: find命令对匹配的文件执行该参数所给出的shell命令,相应的命令形式为

'command'{} \; (注意{}和\之间的空格)

-ok 和 -exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

options有如下几种:

-name :按照文件名查找文件

-perm :按照文件权限来查找文件

-user :按照文件属主来查找文件

-group :按照文件所属的组来查找文件

-mtime -n +n 按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。find命令还有-atime 和-ctime选项,但它们都和-mtime选项相似。

-size n[c]查找文件长度为n块的文件,带有c时表示文件长度以字节计。

-nogroup 查找无有效所属组的文件,即该文件所属的组在/etc/groups中不存在

-newer file1 !file2查找更改时间比文件file1新但比文件file2旧的文件

-depth 先查找指定目录有无匹配文件,若无则再在子目录中查找

-type 查找某一类型的文件,如

b :块设备文件

d:目录

e:字符设备文件

p;管道文件

l:符号链接文件

f:普通文件

(3)find命令举例

find -name "*.txt" -print 查找txt结尾的文件并输出到屏幕上

find /cmd ".sh" -print 查找/cmd目录下所有sh文件,并输出

find . -perm 755 -print 查找当前目录下权限为755的文件,并输出

find `pwd` -user root -print 查找当前目录下属主为root的文件,并输出

find ./ -group sunwill -print 查找当前目录下所属主是sunwill的文件

find /var -mtime -5 -print 查找/var目录下更改时间为5天内的所有文件

find /var -mtime +5 -print 查找/var目录下更改时间为5天以前的所有文件

find /var -newer "myfile1" ! -newer "myfile2" -print 查找/var目录下比myfile1新,但是比myfile2旧的所有文件。

find /var -type d -print 查找/var目录下所有目录

find /var -type l -print 查找/var目录下所有的符号链接文件。

find . -size +1000000c -print 查找当前目录下大于1000000字节的文件

find / -name "con.file" -depth -print 查找根目录下有无"con.file",若无则在其子目录中查找

find . -type f -exec ls -l {} \; 查找当前目录下是否有普通文件,若有则执行ls -l

(4)xargs命令

在 使用find命令的-exec选项处理匹配到的文件时,find命令将所有匹配到的文件一起传递给exec。不幸的是,有些系统对能够传递给exec的命 令长度有限制,这样find命令运行几分钟之后就算出现溢出错误。错误信息通常是“参数列太长”或“参数列溢出”。这就是xargs的用处所在,特别是与 find命令一起使用,exec会发起多个进程,而xargs会多个,只有一个

find ./ -perm -7 -print | xargs chmod o-w 查找权限为7的文件并传递给chmod处理

(5)grep介绍.如果你想在当前目录下 查找"hello,world!"字符串,可以这样:

grep -rn "hello,world!" *

* : 表示当前目录所有文件,也可以是某个文件名

-r 是递归查找

-n 是显示行号

-R 查找所有文件包含子目录

-i 忽略大小写

下面是一些有意思的命令行参数:

grep -i pattern files :不区分大小写地搜索。默认情况区分大小写,

grep -l pattern files :只列出匹配的文件名,

grep -L pattern files :列出不匹配的文件名,

grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),

grep -C number pattern files :匹配的上下文分别显示[number]行,

grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,

grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。

这里还有些用于搜索的特殊符号:

\< 和 \> 分别标注单词的开始与结尾。

例如:

grep man * 会匹配 ‘Batman’、‘manic’、‘man’等,

grep '\

grep '\' 只匹配‘man’,而不是‘Batman’或‘manic’等其他的字符串。

'^':指匹配的字符串在行首,

'$':指匹配的字符串在行尾,

(6),xargs配合grep查找

find -type f -name '*.php'|xargs grep 'hello,world!'

centos在文本中搜索字符串_CentOS查找所有文件中某个字符串相关推荐

  1. c语言 在txt文件中搜索关键词_c语言从文件中查找字符串

    展开全部 这需要使用匹配算法来62616964757a686964616fe58685e5aeb931333337396231实现,具体参考代码如下:#include #include #define ...

  2. Python查找Word文件中红色和加粗的文字(附元宵节送书活动中奖名单)

    背景知识:docx文件的结构分为三层,1.Docment对象表示整个文档:2.Docment包含了Paragraph对象的列表,每个Paragraph对象用来表示文档中的一个段落:3.一个Paragr ...

  3. VB快速查找大型文件中包含的字符串

    关于查找大型文件中包含的字符串,一般都把文件内容读入到内存,然后在内存里进行比较,却不知这种办法有一个致命的弱点,那就是由于大量的内存申请和释放导致的内存颠簸,会使系统性能下降,严重影响了查找的速度. ...

  4. linux 文件转换ascii,linux 小技巧(查找替换文件中的ascii编码字符)

    这里纪录一些linux下用到的小技巧,以免遗忘 在linux中经常碰见各种文件处理.最常用的就是替换文件中的某些字符.常见字符替换还是很容易完成.但是有些不可见字符以及ascii编码字符等等都无法直接 ...

  5. 使用正则表达式查找Word文件中AABB和ABAC形式的成语

    使用正则表达式查找Word文件中AABB和ABAC形式的成语 1.实验目的 (1)熟练安装Python扩展库python-docx. (2)了解Word文件的内容组织方式. (3)熟悉Python标准 ...

  6. java 文件 字符串_java将字符串写入到txt文件中

    将字符串写入到txt文件中import java.io.BufferedWriter; import java.io.File; import java.io.FileNotFoundExceptio ...

  7. idea中ctrl+shift+f(在文件中查找)失效,全图文解决方案

    idea中ctrl+shift+f(在文件中查找)失效,全图文解决方案 一.Win11微软键盘 原因:因为输入法默认指定ctrl+shift+f是简体与繁体中文输入之间的切换,所以在idea中按键无效 ...

  8. 在python平台上利用pymol来查找PDB文件中蛋白质的相互作用位点

    这篇代码写的可能有点问题,大家如果有需要,去看另一篇吧.如果有啥不足,请批评指正. 在python平台上利用pymol来查找PDB文件中蛋白质的相互作用位点 关于蛋白质结合位点,查阅了很多篇文献,大多 ...

  9. 【BLE MIDI】MIDI 文件速度设置识别 ( 查找 midi 文件中速度相关的二进制数据 | FF 51 03 速度设置指令 )

    文章目录 一.问题说明 二.查找 midi 文件中速度相关的二进制数据 一.问题说明 解析 midi 文件时 , 发现音符解析出现异常 ; 是根据 音符 微秒时长 , 统计音符时 , 发现音符解析出现 ...

最新文章

  1. 《人工智能北京共识》发布,全文公开
  2. ida提取hashab算法记录
  3. 转载:2014年流行的手机App小图标界面设计欣赏(1)
  4. sap abap在表VBAP和VBAK上增加新字段的标准BAPI
  5. Android开发 listitem中采用倒计时
  6. 最常问的Java面试题,有Get吗?
  7. 楼盘管理系统_教育信息化2.0,2019年校园智慧后勤管理系统五大品牌
  8. Linux系统服务及其创建详解(service/chkconfig)
  9. centos6.4 32位 详细安装Nginx
  10. postman上传多个文件_不要只会使用 postman,你还需掌握 curl 的使用!
  11. 架构模式: 微服务的基底
  12. linux 命令备份数据库,linux备份数据库命令
  13. java网上购物系统_Java Web 应用教程——网上购物系统的实现
  14. wifi信号增强android,WiFi信号增强大师
  15. 个人技术博客的选择:CSDN、博客园、简书、知乎专栏、Github、新浪、个人建站等?
  16. Qt 教程(传智教育)
  17. 哪款蓝牙耳机适合运动的时候戴?佩戴舒适的蓝牙耳机推荐
  18. java图书商城项目_JavaWeb之网上图书商城-框架搭建
  19. STM32存储器知识的相关应用(IAP、Bit Banding)
  20. PDFBox打印PDF A4格式文档和定制规格条码实例

热门文章

  1. 深入浅出统计学(十三)假设检验
  2. 腾讯视频招GNN方向实习生啦~
  3. 引争议!硕导提议高校教师应多配偶,这样就能多生娃!高校的处理通报来了...
  4. 惊了,AI已经学会刷LeetCode了!
  5. 引燃AI社区,不用跨界也能从文本生成图像,OpenAI新模型打破自然语言与视觉次元壁...
  6. 中文版!学习TensorFlow、PyTorch、机器学习、深度学习和数据结构五件套!(附免费下载)...
  7. 180 所高校新增“人工智能”专业,人工智能火到爆!
  8. Maven最全笔记,99%的人都收藏了!
  9. celery源码分析-worker初始化分析(下)
  10. OSI中端到端与点到点区别。