Linux文本匹配命令grep&find&cat(zcat)(持续更新中)

原创作品,出自 “晓风残月xj” 博客,欢迎转载,转载时请务必注明出处(http://blog.csdn.net/xiaofengcanyuexj)。

由于各种原因,可能存在诸多不足,欢迎斧正!    

      Linux有着强大的文本处理命令,最近线上日志比较大,一天好几个G,所以没有存入数据库,而是直接切到文件中,这样查看日志就得学会Linux下文本处理了,这里简单介绍一下最近用到的几个文本匹配的命令,欢迎大家支出问题。
1、grep
grep:关键字:-截取, 文本搜集工具, 结合正则表达式非常强大
1.1、基本格式如下:
      grep [参数]  [要匹配的内容]  [文件名]
1.2、主要参数
      -n : 显示匹配的行号及行
      -i : 不区分大小写
      -c : 只输出匹配的行数
      -h : 查询多文件时不显示文件名
      -l : 查询多文件时, 只输出包含匹配字符的文件名  
      -v : 显示不包含匹配文本的所有行
1.3、举例

     grep -i RESponse  /home/jinxu/桌面/test, 不论大小写在/home/jinxu/桌面/test文件中匹配"RESponse"


2、find

find:关键字-查找,查找匹配文件
2.1、基本格式如下:
      find  [指定查找目录]  [查找规则]
2.2、主要参数
     -name    filename     查找名为filename的文件
     -perm    permission   按执行权限来查找
    -user    username     按文件属主来查找
    -group   groupname    按组来查找
    -mtime   -n(+n)     按文件更改时间来查找文件,-n指n天以内,+n指n天以前
    -atime   -n(+n)     按文件访问时间来查,-n指n天以内,+n指n天以前
    -ctime   -n(+n)     按文件创建时间来查找文件,-n指n天以内,+n指n天以前
2.3、举例
     find . -ctime +10 ,查找根目录下创建时间在10天以前的
     find . -name test,在根目录下匹配名为“test”的文件



3、cat

cat:文件打开与创建操作,主要三大功能:

a)、显示整个文件

     cat file1

     打开当前目录下的file1文件

b)、键盘创建一个文件。

     cat > filename  

     打开当前目录下的file1文件,只能创建新文件,不能编辑已有文件

c)、将几个文件合并为一个文件: 

     cat file1 file2 > file

3.1、基本格式如下:

cat [参数] [文件名]

3.2、主要参数参数:

   -n 或 --number 由 1 开始对所有输出的行数编号

   -b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号

   -s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行

   -v 或 --show-nonprinting

3.3、举例

cat file1

打开当前目录下的file1文件


4、zcat

  zcat:可以解压缩数据,并把内容显示在屏幕上,但运行zcat命令后,压缩文件的内容本身未发生变化,仍然以压缩方式存储在硬盘上。

4.1、基本格式如下:

zcat [参数] [文件名]

4.2、主要参数参数:

  -n 或 --number 由 1 开始对所有输出的行数编号

  -b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号
  -s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
  -v 或 --show-nonprinting

4.3、举例

 zcat file1.tar

    打开当前目录下的压缩文件file1


   由于时间有限,在写博文的过程中参考过一些文献,在此表示感谢;同时鉴于水平原因,你难免有不足之处,欢迎斧正!





你可能感兴趣的:(Linux)