Linux2文件目录操作3-文件内容查询

来源:互联网 发布:怎么能让淘宝店铺靠前 编辑:程序博客网 时间:2024/06/06 06:04

Linux 文件、目录操作

文件内容查询

直接查看文件内容

文件查看与链接命令 cat

cat命令是由第一行开始显示文件,如果某文件的内容行数超过40行以上,就根本来不及在屏幕上看到结果,配合more或less执行比较好。

格式:    cat [选项] <file1>...选项:    -A :相当于 -vET 的整合参数,可列出一些特殊字符,而不是空白而已;    -b :列出行号,仅针对非空白行做行号显示,空白行不标行号;    -E :将结尾的断行字符 $ 显示出来;    -e :等同于 -vE 的整合参数;    -n :打印出行号,连同空白行也会有行号,与 -b 的参数不同;    -T :将[Tab]按键以^T显示出来;    -t :等同于 -vT 的整合参数;    -v :列举一些看不出来的特殊字符,显示不可打印字符;    -s :压缩空白行,当遇到有连续两行以上的空白行时,代换为一行空白行。

反向列示tac

功能与cat想法,由最后一行到第一行反向在屏幕上显示出来。

格式:    tac [选项] <文件>选项:     -b, --before            在行前而非行尾添加分隔标志      -r, --regex            将分隔标志视作正则表达式来解析      -s, --separator=字符串    使用指定字符串代替换行作为分隔标志

添加行号打印 nl

nl可将输出的文件内容自动加上行号。可以讲行号做比较多的显示设计,包括位数与是否自动补零等。

    格式:        nl [选项] <文件>    选项:        -b, --body-numbering=STYLE        use STYLE for numbering body lines            指定行号显示样式,主要有两种:            -b a :表示不论是否为空行,都列出行号;            -b t :不列出空行的行号(默认值)。       -d, --section-delimiter=CC         use CC for separating logical pages            使用指定的CC 分隔逻辑页数。       -f, --footer-numbering=STYLE      use STYLE for numbering footer lines            指定页脚行目的显示样式       -h, --header-numbering=STYLE      use STYLE for numbering header lines            指定页眉行目的显示样式       -n :--number-format=FORMAT        insert line numbers according to FORMAT            列出行号的表示方法,主要有三种:            -n ln :行号在屏幕的最左方显示;            -n rn :行号在自己字段的最右方显示,且不加0            -n rz :行号在自己字段的最右方显示,且加0       -w :行号字段占用的位数。

非纯文本文件:od

以上提到的都是在查阅纯文本文件的内容,要查阅非文本文件时,可以利用od这个命令来读取。
利用这个命令,可将数据文件或二进制文件的内容数据读出来。虽然读出来的数值默认是使用非文本文件,即是以十六进制的数值来显示,但我们仍可通过-t c参数使其以ASCII类型字符显示。

格式:    od [选项] 文件选项:    -t :后面可以接各种“类型(TYPE)”   的输出,例如:        a   :利用默认的字符来输出;        c   :使用ASCII字符来输出;        d[size]:利用十进制来输出数据,每个整数占用size bytes;        f[size]:利用浮点数来输出数据,每个数占用size bytes;        o[size]:利用八进制来输出数据,每个数占用size bytes;        x[size]:利用十六进制来输出数据,每个整数占用size bytes;

可翻页查看

分屏显示命令 more

类似cat可将文件显示在屏幕上,但它每次只显示一页。该命令还具有搜索字符串功能。
more程序运行过程中,有一些命令可以按的:

  • 空格键(Space) :代表显示的文件向下翻一页;
  • Enter :显示的文件向下滚动一行;
  • /字符串 :在显示的文件中,向下查询“字符串”这个关键字;
  • :f :立刻显示出文件名以及目前显示的行数;
  • q :退出more程序,不再显示该文件内容;
  • b或{Ctrl]-b :往回翻页,只对文件有效。

    格式:    more [选项] <文件>      选项:    -<num> :指定屏幕显示的行数为 num行;    -d     :在屏幕下方显示提示信息“Press space to continue ,'q' to quit.”若用户按错键,则显示信息“Press 'h' for instruction.”而不是响铃。    -l     :more默认情况下遇见特殊字符^L(送纸字符)时会暂停,该选项可取消该功能。    -f     :计算行数时,计算的是实际行数,而非自动换行后的行数。    -P     :不以卷动方式显示每一页,而是先清屏再显示。    -c     :类似-P,但是先从顶部开始显示内容,再清除每行后的剩余的旧内容。    -s     :压缩空白行,当遇到有连续两行以上的空白行时,就替换为一行。    +/<string>:在文件中搜寻字符串string,然后显示字符串所在页的内容。    + <num>:从第num行开始显示。

按页显示命令 less

作用与more相似,less命令允许用户浏览已看过的部分,同时less命令并不在一开始就读入整个文件,因此处理大文件时速度较快。
less程序执行中,可以输入的命令:

  • 空格键 :向下翻动一页;
  • [PageDown]:向下翻动一页;
  • [PageUp] :向上翻动一页;
  • /字符串 :向下查询“字符串”的功能;
  • ?字符串 :向上查询“字符串”的功能;
  • n :重复前一个查询(与/或?有关);
  • N :反向重复前一个查询(与/或?有关);
  • q :离开less这个程序。

    格式:    less [选项] [文件]参数:    -i :查找时忽略大小写;    -p <string>:搜寻指定字符串,并从第一个符合条件的地方开始显示;    -<num>    :改变页面的显示列数;    -s        :当某行内容超过显示页面的宽度时,直接将超出部分截断舍去。

数据选取

取出前面几行:head

格式: head [-n number] 文件参数:    -n :后面接数字,代表显示几行的意思

取出后面几行:tail

格式:tail [-n number] 文件参数:    -n :后面接数字,代表显示几行的意思    -f :表示持续检测后面所接的文件名,要等到按下[ctrl]=c才会结束tail的检测。

文件比较

文件比较命令:diff diff3

文件比较,常用在同一个软件的不同版本之间,比较配置文件与源文件的区别。
diff命令是最常见的文件比较命令。用在比较两个文件之间的区别,并且以行为单位来比较。一般用在ASCII纯文本文件的比较上。由于是以行为比较的单位,因此diff通常用在同一个文件(或软件)的新旧版本区别上。
diff命令分步读取两个输入文件,逐步分析其中异同点,从而找出两者的区别。
diff3命令可比较三个文件的异同。

格式:    diff  file1  file2    diff3 file1  file2  file3

文件比较命令:cmp

cmp主要也是在比较两个文件,主要是利用“字节”单位去比较,也可以比较二进制文件。

格式:    cmp [-s] file1 file2参数:    -s:将所有的不同点的字节处都列出来,因为cmp默认仅会输出第一个发现的不同点。

文件排序命令:sort

sort命令用于对输入数据或文本文件的内容进行排序,并按一定顺序逐行显示。

格式:    sort [选项] [文件]选项:    -f :忽略大小写的差异    -b :忽略最前面的空格符部分;    -M :以月份的名字来排序    -n :使用“纯数字”进行排序(默认是以文字类型来排序);    -r :反向排序;    -u :就是uniq,相同的数据中,仅出现一行代表;    -t :分隔符,默认用[Tab}来分隔;    -k :以那个区间(filed)来进行排序的意思。