常用的文件查看命令

常用的文本查看命令

常用的文件查看命令,常用文件查看命令

常用的文本查看命令

 

  1  cat

  常用参数

  -n    突显行号

  -E    突显行尾为止符 $

  -b    展现非空行编号

  -s    两次三番的空行合成一行

  -A    突显隐藏字符

  常常用法        cat    -An

  [[email protected] ~]# cat -An /etc/passwd
  1    root:x:0:0:root:/root:/bin/bash$
  2    bin:x:1:1:bin:/bin:/sbin/nologin$
  3    daemon:x:2:2:daemon:/sbin:/sbin/nologin$
  4    adm:x:3:4:adm:/var/adm:/sbin/nologin$
  5    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin$
  6    sync:x:5:0:sync:/sbin:/bin/sync$
  7    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown$

  当然还有cat 的双胞胎,将文件倒着看的 tac

    [[email protected] ~]# tac /etc/passwd
    centos:x:1000:1000:centos:/home/centos:/bin/bash
    tcpdump:x:72:72::/:/sbin/nologin
    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
    postfix:x:89:89::/var/spool/postfix:/sbin/nologin
    avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
    gnome-initial-setup:x:989:984::/run/gnome-initial-setup/:/sbin/nologin
    gdm:x:42:42::/var/lib/gdm:/sbin/nologin

 

  2 more

  分页查看文件内容,空格键翻页,q键退出。

  [[email protected] ~]# more /etc/passwd
  root:x:0:0:root:/root:/bin/bash
  bin:x:1:1:bin:/bin:/sbin/nologin
  daemon:x:2:2:daemon:/sbin:/sbin/nologin
  adm:x:3:4:adm:/var/adm:/sbin/nologin
  lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
  sync:x:5:0:sync:/sbin:/bin/sync
  shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
  halt:x:7:0:halt:/sbin:/sbin/halt
  mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
  operator:x:11:0:operator:/root:/sbin/nologin
  games:x:12:100:games:/usr/games:/sbin/nologin
  ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
  nobody:x:99:99:Nobody:/:/sbin/nologin
  --More--(22%)

 

  3 head

  查看文件首部多少行

  -n    指定行数,暗许头10行。

  [[email protected] ~]# head -5 /etc/passwd
  root:x:0:0:root:/root:/bin/bash
  bin:x:1:1:bin:/bin:/sbin/nologin
  daemon:x:2:2:daemon:/sbin:/sbin/nologin
  adm:x:3:4:adm:/var/adm:/sbin/nologin
  lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

  4 tail

      查看文件底部多少行

      常用参数

      -n    指定行数,和head类似。

      -f    实时查看文件内容。

    [[email protected] ~]# tail -f /var/log/messages #实时查看系统日志
      May 9 16:45:40 centos7 avahi-daemon[536]: Withdrawing address record for fe80::ae3e:39a4:1dca:b898 on ens34.
      May 9 16:45:41 centos7 NetworkManager[567]: <warn> [1494319541.5073] dhcp4 (ens38): request timed out
      May 9 16:45:41 centos7 NetworkManager[567]: <info> [1494319541.5075] dhcp4 (ens38): state changed unknown -> timeout
      May 9 16:45:41 centos7 NetworkManager[567]: <info> [1494319541.5152] dhcp4 (ens38): canceled DHCP transaction, DHCP client pid 3388

  5 cut

linux文本处理工具,常用文件查看命令。      切割文本,按要求输出文本

      -d    指定分隔符,暗中认可为Tab按键

      -f    指定第几段字符

      -c    指定字符切割

      例如,cat查看/etc/passwd的前三个字符

    [[email protected] ~]# cat /etc/passwd| cut -d: -f -4
      root:x:0:0
      bin:x:1:1
      daemon:x:2:2
      adm:x:3:4
      lp:x:4:7
      sync:x:5:0
      shutdown:x:6:0
      halt:x:7:0
      mail:x:8:12

  6  wc

    查看文件之中内容有多少行,多少字节,字符,字数。

      -l    查看行数

      -w    计算单词总数

      -m    统计字符总数

      -c    总括字节总数 

    [[email protected] ~]# wc -lwcm /etc/passwd
      43 87 2238 2238 /etc/passwd

  7  sort

    给文本排序,默许按每行首字母顺序排序

      -r    由上至下整理

      -n    按数字大小整理

      -u    删除输出中的重复行

      -t    今后边的字符为分隔符

      -k    拔取某些字段举行排序

      -f    忽略字符大小写

  例如,按第多少个字段进行排序    

 [[email protected] ~]# sort -k 3 /etc/passwd
      abrt:x:173:173::/etc/abrt:/sbin/nologin
      adm:x:3:4:adm:/var/adm:/sbin/nologin
      bin:x:1:1:bin:/bin:/sbin/nologin
      centos:x:1000:1000:centos:/home/centos:/bin/bash
      chrony:x:991:988::/var/lib/chrony:/sbin/nologin
      daemon:x:2:2:daemon:/sbin:/sbin/nologin
      ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
      games:x:12:100:games:/usr/games:/sbin/nologin

  8 uniq

    从输入中去除重复行

    -c    显示每行重复出现的次数

    -d    仅仅彰显重复

    -u     突显不重复

    例如:取/etc/passwd文件以”:”为分隔符的第四个字段并去重。

 [[email protected] ~]# cut -d":" -f 7 /etc/passwd | uniq -c
     1 /bin/bash
     4 /sbin/nologin
     1 /bin/sync
     1 /sbin/shutdown
     1 /sbin/halt
     34 /sbin/nologin
     1 /bin/bash

末尾在补偿多个超实用的例子

    总括日志中数十一次造访的前十个IP地址

cat     /var/log/httpd/access.log | cut –d" " –f 1 | sort | uniq –c | sort –nr | head

常用的文本查看命令 1 cat 常用参数 -n展现行号 -E显示行尾甘休符 $
-b显示非空行编号 -s三番五次的空行…

文本处理工具

 

 

抽取文本的工具

文件内容:less和cat

文件截取:head和tail

按列抽取:cut

按紧要性字抽取:grep

  1  cat

  1  cat

文本查看

文件查看命令:cat, tac,rev

       cat [OPTION]… [FILE]…

-E: 显示行甘休符$

-n: 对突显出的每一行开展编号

-A:突显全体控制符

-b:非空行编号

-s:压缩一连的空行成一行

tac:行的反向显示

rev:列的反向突显

nl:加行号,空行不加行号。

  常用参数

  常用参数

分页查看文件内容

more: 分页查看文件

more [OPTIONS…] FILE…

-d: 突显翻页及退出提醒

less:一页一页地翻看文件或STDIN输出

翻看时有用的授命包涵:

/文本搜索文本

n/N跳到下一个或上三个一双两好

less命令是man命令使用的分页器

  -n    突显行号

  -n    展现行号

展现文本前或后行内容

head [OPTION]… [FILE]…

-c #: 指定获取前#字节

-n #: 指定获取前#行

-#:指定行数

 

tail [OPTION]… [FILE]…

-c #: 指定获取后#字节

-n #: 指定获取后#行

-#:

-f: 跟踪显示文件fd新增添的情节,常用日志监控

相当于–follow=descriptor

-F: 跟踪文件名,相当于—follow=name –retry(文件没了就指示,小f不提示)

tailf类似tail –f,当文件不升高时并不访问文件(节省财富)

[root@centos7 /dev]#tail -f /app/a  -n0 &

&后台运转实时观察a文件的情节变更,-n0如果有新行就应运而生,旧行不要。

fg和bg:前台和后台运营程序

  -E    突显行尾为止符 $

  -E    呈现行尾为止符 $

按列抽取文本cut和统一文件paste

cut [OPTION]… [FILE]…

-d DELIMITE帕杰罗: 指明分隔符,暗中认同tab键作为分隔符。

-f FILEDS:

#: 第#个字段

#,#[,#]:离散的多个字段,例如1,3,6

#-#:两次三番的三个字段, 例如1-6

错落使用:1-3,7

-c按字符切割

–output-delimiter=ST中华VING指定输出分隔符

[root@centos7 ~]#cut -d: -f1,3 /etc/passwd

root:0

bin:1

daemon:2

以:为分隔符,去除其中的用户名和uid。

[root@centos7 ~]#cut -d: -f1,3 --output-delimiter=*  /etc/passwd

root*0

bin*1

daemon*2

adm*3

lp*4

点名输出的相间符为*

cut和paste

突显文件或STDIN数据的指定列

cut-d:-f1/etc/passwd

cat /etc/passwd|cut-d:-f7

cut-c2-5/usr/share/dict/words

paste 合并五个公文同行号的列到一行

paste [OPTION]… [FILE]…

-d 分隔符:指定分隔符,暗许用TAB

-s : 全数行合成一行突显

paste f1 f2

paste -s f1 f2

  -b    突显非空行编号

  -b    显示非空行编号

剖析文本的工具

文本数据计算:wc

整理文本:sort

相比文件:diff和patch

  -s    两次三番的空行合成一行

  -s    两次三番的空行合成一行

采集文本计算数据wc

计数单词总数、行总数、字节总数和字符总数(linux中3个中国字多个字节,二个假名二个字节)

字符和字节是三个概念,字节是磁盘上占有的长空大小

能够对文本或STDIN中的数据运营

wc story.txt

39   237  1901  story.txt

行数 字数 字节数

常用选项

-l 只计数行数

-w 只计数单词总数

-c 只计数字节总数

-m 只计数字符总数

-L 突显文件中最长行的尺寸

  -A    呈现隐藏字符

  -A    显示隐藏字符

文件排序sort

把整治过的文件呈现在STDOUT,不改动原有文本

sort[options]file(s)

常用选项

-r执行反方向(由上至下)整理

-n执行按数字大小整理(有小到大)

-f选项忽略(fold)字符串中的字符大小写

-u选项(独特,unique)删除输出中的重复行

-t c选项应用c做为字段界定符

-k X选项根据使用c字符分隔的X列来整理可以使用频仍

  日常用法        cat    -An

  日常用法        cat    -An

uniq

uniq命令:从输入中去除前后持续的重复的行

uniq[OPTION]… [FILE]…

-c: 突显每行重复出现的次数

-d: 仅展现重复过的行

-u: 仅显示没有重复的行

接二连三且完全相同方为重复

常和sort 命令一道合营使用:

sort userlist.txt | uniq-c

  [root@centos7 ~]# cat -An /etc/passwd
  1    root:x:0:0:root:/root:/bin/bash$
  2    bin:x:1:1:bin:/bin:/sbin/nologin$
  3    daemon:x:2:2:daemon:/sbin:/sbin/nologin$
  4    adm:x:3:4:adm:/var/adm:/sbin/nologin$
  5    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin$
  6    sync:x:5:0:sync:/sbin:/bin/sync$
  7    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown$
  [root@centos7 ~]# cat -An /etc/passwd
  1    root:x:0:0:root:/root:/bin/bash$
  2    bin:x:1:1:bin:/bin:/sbin/nologin$
  3    daemon:x:2:2:daemon:/sbin:/sbin/nologin$
  4    adm:x:3:4:adm:/var/adm:/sbin/nologin$
  5    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin$
  6    sync:x:5:0:sync:/sbin:/bin/sync$
  7    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown$

比较文件

相比三个文本之间的区分

diff:比较三个文件的故事情节,并不可比多少个文本的质量

difffoo.conffoo2.conf

5c5

< use_widgets=no


>    use_widgets=yes

阐明第伍行有分别(改变)

  当然还有cat 的双胞胎,将文件倒着看的 tac

  当然还有cat 的双胞胎,将文件倒着看的 tac

复制对文本改变patch

diff命令的出口被封存在一种名叫“补丁”的文件中

动用-u选项来输出“统一的(unified)”diff格式文件,最适用于补丁文件

patch复制在其他文件中展开的更动(要深图远虑运用)

适用-b选项来自动备份改变了的文书

$diff -u  foo.conf foo2.conf>foo.patch

$patch -b foo.conf foo.patch

[root@centos7 /app]#cp /etc/fstab  f3

[root@centos7 /app]#cp /etc/fstab  f4

[root@centos7 /app]#echo a >>f4

[root@centos7 /app]#diff f3 f4 -u >f3f4.diff

[root@centos7 /app]#ll

total 12

-rw-r--r--. 1 root root 595 Nov 21 09:14 f3

-rw-r--r--. 1 root root 392 Nov 21 09:15 f3f4.diff

-rw-r--r--. 1 root root 597 Nov 21 09:14 f4

[root@centos7 /app]#rm -f f4

[root@centos7 /app]#patch -b f3 f3f4.diff

patching file f3

[root@centos7 /app]#ll

total 12

-rw-r--r--. 1 root root 597 Nov 21 09:15 f3

-rw-r--r--. 1 root root 392 Nov 21 09:15 f3f4.diff

-rw-r--r--. 1 root root 595 Nov 21 09:14 f3.orig

创建f3、f4将两文本不同结果输出到文件f3f4.diff中删去f4,使用patch找回f4,

但找回的文件其实是f3成为了f4,f3实际上为备份的f3.orig,通过文件大小也能对照出来。

    [root@centos7 ~]# tac /etc/passwd
    centos:x:1000:1000:centos:/home/centos:/bin/bash
    tcpdump:x:72:72::/:/sbin/nologin
    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
    postfix:x:89:89::/var/spool/postfix:/sbin/nologin
    avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
    gnome-initial-setup:x:989:984::/run/gnome-initial-setup/:/sbin/nologin
    gdm:x:42:42::/var/lib/gdm:/sbin/nologin
    [root@centos7 ~]# tac /etc/passwd
    centos:x:1000:1000:centos:/home/centos:/bin/bash
    tcpdump:x:72:72::/:/sbin/nologin
    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
    postfix:x:89:89::/var/spool/postfix:/sbin/nologin
    avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
    gnome-initial-setup:x:989:984::/run/gnome-initial-setup/:/sbin/nologin
    gdm:x:42:42::/var/lib/gdm:/sbin/nologin

 

 

  2 more

  2 more

  分页查看文件内容,空格键翻页,q键退出。

  分页查看文件内容,空格键翻页,q键退出。

  [root@centos7 ~]# more /etc/passwd
  root:x:0:0:root:/root:/bin/bash
  bin:x:1:1:bin:/bin:/sbin/nologin
  daemon:x:2:2:daemon:/sbin:/sbin/nologin
  adm:x:3:4:adm:/var/adm:/sbin/nologin
  lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
  sync:x:5:0:sync:/sbin:/bin/sync
  shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
  halt:x:7:0:halt:/sbin:/sbin/halt
  mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
  operator:x:11:0:operator:/root:/sbin/nologin
  games:x:12:100:games:/usr/games:/sbin/nologin
  ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
  nobody:x:99:99:Nobody:/:/sbin/nologin
  --More--(22%)
  [root@centos7 ~]# more /etc/passwd
  root:x:0:0:root:/root:/bin/bash
  bin:x:1:1:bin:/bin:/sbin/nologin
  daemon:x:2:2:daemon:/sbin:/sbin/nologin
  adm:x:3:4:adm:/var/adm:/sbin/nologin
  lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
  sync:x:5:0:sync:/sbin:/bin/sync
  shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
  halt:x:7:0:halt:/sbin:/sbin/halt
  mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
  operator:x:11:0:operator:/root:/sbin/nologin
  games:x:12:100:games:/usr/games:/sbin/nologin
  ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
  nobody:x:99:99:Nobody:/:/sbin/nologin
  --More--(22%)

 

 

  3 head

  3 head

  查看文件首部多少行

  查看文件首部多少行

  -n    指定行数,专断认同头10行。

  -n    指定行数,暗许头10行。

  [root@centos7 ~]# head -5 /etc/passwd
  root:x:0:0:root:/root:/bin/bash
  bin:x:1:1:bin:/bin:/sbin/nologin
  daemon:x:2:2:daemon:/sbin:/sbin/nologin
  adm:x:3:4:adm:/var/adm:/sbin/nologin
  lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
  [root@centos7 ~]# head -5 /etc/passwd
  root:x:0:0:root:/root:/bin/bash
  bin:x:1:1:bin:/bin:/sbin/nologin
  daemon:x:2:2:daemon:/sbin:/sbin/nologin
  adm:x:3:4:adm:/var/adm:/sbin/nologin
  lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

  4 tail

  4 tail

      查看文件底部多少行

      查看文件底部多少行

      常用参数

      常用参数

      -n    指定行数,和head类似。

      -n    指定行数,和head类似。

      -f    实时查看文件内容。

澳门金沙国际 ,      -f    实时查看文件内容。

    [root@centos7 ~]# tail -f /var/log/messages #实时查看系统日志
      May 9 16:45:40 centos7 avahi-daemon[536]: Withdrawing address record for fe80::ae3e:39a4:1dca:b898 on ens34.
      May 9 16:45:41 centos7 NetworkManager[567]: <warn> [1494319541.5073] dhcp4 (ens38): request timed out
      May 9 16:45:41 centos7 NetworkManager[567]: <info> [1494319541.5075] dhcp4 (ens38): state changed unknown -> timeout
      May 9 16:45:41 centos7 NetworkManager[567]: <info> [1494319541.5152] dhcp4 (ens38): canceled DHCP transaction, DHCP client pid 3388
    [root@centos7 ~]# tail -f /var/log/messages #实时查看系统日志
      May 9 16:45:40 centos7 avahi-daemon[536]: Withdrawing address record for fe80::ae3e:39a4:1dca:b898 on ens34.
      May 9 16:45:41 centos7 NetworkManager[567]: <warn> [1494319541.5073] dhcp4 (ens38): request timed out
      May 9 16:45:41 centos7 NetworkManager[567]: <info> [1494319541.5075] dhcp4 (ens38): state changed unknown -> timeout
      May 9 16:45:41 centos7 NetworkManager[567]: <info> [1494319541.5152] dhcp4 (ens38): canceled DHCP transaction, DHCP client pid 3388

  5 cut

  5 cut

      切割文本,按必要输出文本

      切割文本,按须要输出文本

      -d    指定分隔符,私行认同为Tab按键

      -d    指定分隔符,私行认同为Tab按键

      -f    指定第几段字符

      -f    指定第几段字符

      -c    指定字符切割

      -c    指定字符切割

      例如,cat查看/etc/passwd的前八个字符

      例如,cat查看/etc/passwd的前七个字符

    [root@centos7 ~]# cat /etc/passwd| cut -d: -f -4
      root:x:0:0
      bin:x:1:1
      daemon:x:2:2
      adm:x:3:4
      lp:x:4:7
      sync:x:5:0
      shutdown:x:6:0
      halt:x:7:0
      mail:x:8:12
    [root@centos7 ~]# cat /etc/passwd| cut -d: -f -4
      root:x:0:0
      bin:x:1:1
      daemon:x:2:2
      adm:x:3:4
      lp:x:4:7
      sync:x:5:0
      shutdown:x:6:0
      halt:x:7:0
      mail:x:8:12

  6  wc

  6  wc

    查看文件之中内容有微微行,多少字节,字符,字数。

    查看文件之中内容有稍许行,多少字节,字符,字数。

      -l    查看行数

      -l    查看行数

      -w    计算单词总数

      -w    统计单词总数

      -m    总计字符总数

      -m    计算字符总数

      -c    统计字节总数 

      -c    计算字节总数 

    [root@centos7 ~]# wc -lwcm /etc/passwd
      43 87 2238 2238 /etc/passwd
    [root@centos7 ~]# wc -lwcm /etc/passwd
      43 87 2238 2238 /etc/passwd

  7  sort

  7  sort

    给文本排序,暗中认可按每行首字母顺序排序

    给文本排序,默许按每行首字母顺序排序

      -r    由上至下整理

      -r    由上至下整理

      -n    按数字大小整理

      -n    按数字大小整理

      -u    删除输出中的重复行

      -u    删除输出中的重复行

      -t    从前面的字符为分隔符

      -t    从前边的字符为分隔符

      -k    选取某些字段进行排序

      -k    选取有个别字段进行排序

      -f    忽略字符大小写

      -f    忽略字符大小写

  例如,按第多少个字段进展排序    

  例如,按第多少个字段进行排序    

 [root@centos7 ~]# sort -k 3 /etc/passwd
      abrt:x:173:173::/etc/abrt:/sbin/nologin
      adm:x:3:4:adm:/var/adm:/sbin/nologin
      bin:x:1:1:bin:/bin:/sbin/nologin
      centos:x:1000:1000:centos:/home/centos:/bin/bash
      chrony:x:991:988::/var/lib/chrony:/sbin/nologin
      daemon:x:2:2:daemon:/sbin:/sbin/nologin
      ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
      games:x:12:100:games:/usr/games:/sbin/nologin
 [root@centos7 ~]# sort -k 3 /etc/passwd
      abrt:x:173:173::/etc/abrt:/sbin/nologin
      adm:x:3:4:adm:/var/adm:/sbin/nologin
      bin:x:1:1:bin:/bin:/sbin/nologin
      centos:x:1000:1000:centos:/home/centos:/bin/bash
      chrony:x:991:988::/var/lib/chrony:/sbin/nologin
      daemon:x:2:2:daemon:/sbin:/sbin/nologin
      ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
      games:x:12:100:games:/usr/games:/sbin/nologin

  8 uniq

  8 uniq

    从输入中删除重复行

    从输入中去除重复行

    -c    突显每行重复出现的次数

    -c    显示每行重复出现的次数

    -d    仅仅突显重复

    -d    仅仅呈现重复

    -u     显示不另行

    -u     突显不另行

    例如:取/etc/passwd文件以”:”为分隔符的第多个字段并去重。

    例如:取/etc/passwd文件以”:”为分隔符的第多个字段并去重。

 [root@centos7 ~]# cut -d":" -f 7 /etc/passwd | uniq -c
     1 /bin/bash
     4 /sbin/nologin
     1 /bin/sync
     1 /sbin/shutdown
     1 /sbin/halt
     34 /sbin/nologin
     1 /bin/bash
 [root@centos7 ~]# cut -d":" -f 7 /etc/passwd | uniq -c
     1 /bin/bash
     4 /sbin/nologin
     1 /bin/sync
     1 /sbin/shutdown
     1 /sbin/halt
     34 /sbin/nologin
     1 /bin/bash

最后在补偿一个超实用的事例

最后在补偿3个超实用的例证

    计算日志中反复造访的前拾二个IP地址

    统计日志中再三造访的前十三个IP地址

cat     /var/log/httpd/access.log | cut –d" " –f 1 | sort | uniq –c | sort –nr | head
cat     /var/log/httpd/access.log | cut –d" " –f 1 | sort | uniq –c | sort –nr | head

相关文章