常用的文件查看命令

常用的文件查看命令

 

  1  cat

  常用参数

  -n    显示行号

  -E    显示行尾结束符 $

  -b    显示非空行编号

  -s    连续的空行合成一行

  -A    显示隐藏字符

  通常用法        cat    -An

  [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$

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

1
2
3
4
5
6
7
8
[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

  分页查看文件内容,空格键翻页,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%)
复制代码

 

  3 head

  查看文件首部多少行

  -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
  4 tail

      查看文件尾部多少行

      常用参数

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

      -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

  5 cut

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

      -d    指定分隔符,默认为Tab按键

      -f    指定第几段字符

      -c    指定字符切割

      例如,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
复制代码

  6  wc

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

      -l    查看行数

      -w    统计单词总数

      -m    统计字符总数

      -c    统计字节总数 

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

  7  sort

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

      -r    由上至下整理

      -n    按数字大小整理

      -u    删除输出中的重复行

      -t    以后面的字符为分隔符

      -k    选择某个字段进行排序

      -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
复制代码
  8 uniq

    从输入中删除重复行

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

    -d    仅仅显示重复

    -u     显示不重复

    例如:取/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

最后在补充一个超实用的例子

    统计日志中频繁访问的前十个IP地址

cat     /var/log/httpd/access.log | cut –d" " –f 1 | sort | uniq –c | sort –nr | head
posted @   Sunzz  阅读(766)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示