linux 上搜索文本 所在文件,定位当前文件文本内容,快速切换查找关键词,翻页阅读文本

1、查找文本内容所在的文件的位置
[root@namenode log]# grep "*m*" ./m* | less
$ grep –e “正则表达式” 文件名 这里的 | less 是随意阅读的命令,具体查一下less的命令,文件名可以是路径的正则表达式 。此时按回车键可以滚动下一行,空格键可以滚动下一页,u键可以回滚上一页,按q键退出
 
查找时不区分大小写:
2、$ grep –i "被查找的字符串" 文件名
 
3、查找匹配的行数:
$ grep -c "被查找的字符串" 文件名
 
4、从文件内容查找不匹配指定字符串的行:
$ grep –v "被查找的字符串" 文件名
 
5、从根目录开始查找所有扩展名为.log的文本文件,并找出包含”ERROR”的行
find / -type f -name "*.log" | xargs grep "ERROR"
例子:从当前目录开始查找所有扩展名为.in的文本文件,并找出包含”thermcontact”的行
find . -name "*.in" | xargs grep "thermcontact"
 
6、快速查找当前文件内容并做修改
vi 文件名
按ESC键 输入 “/查找的内容”按回车键可定位查找第一个,如果需要查找下一个需要不停的按n键
再按回车键就结束查找定位
按Esc键,输入以下命令
:s/text1/text2 用于将光标所在段落搜索到的第一个”text1“替换为”text2“;
:s/text1/text2/g 用于将光标所在段落的所有”text1“替换为”text2“;
:m,ns/text1/text2/g 用于将从 m行开始至n 行结束的所有搜索到的”text1“替换为”text2 “。其中可以使用$表示末行,即“1,$ ”表示替换文档中的所有符合条件的字符.
 
 
less 的用法
  • -b <缓冲区大小> 设置缓冲区的大小
  • -e 当文件显示结束后,自动离开
  • -f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
  • -g 只标志最后搜索的关键词
  • -i 忽略搜索时的大小写
  • -m 显示类似more命令的百分比
  • -N 显示每行的行号
  • -o <文件名> 将less 输出的内容在指定文件中保存起来
  • -Q 不使用警告音
  • -s 显示连续空行为一行
  • -S 行过长时间将超出部分舍弃
  • -x <数字> 将"tab"键显示为规定的数字空格
  • /字符串:向下搜索"字符串"的功能
  • ?字符串:向上搜索"字符串"的功能
  • n:重复前一个搜索(与 / 或 ? 有关)
  • N:反向重复前一个搜索(与 / 或 ? 有关)
  • b 向后翻一页
  • d 向后翻半页
  • h 显示帮助界面
  • Q 退出less 命令
  • u 向前滚动半页
  • y 向前滚动一行
  • 空格键 滚动一行
  • 回车键 滚动一页
  • [pagedown]: 向下翻动一页
  • [pageup]: 向上翻动一页
原文地址:https://www.cnblogs.com/bornteam/p/6572564.html