常用的文件查看命令
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/4 adm:x:3:4:adm:/var/adm:/sbin/5 lp:x:4:7:lp:/var/spool/lpd:/sbin/6 sync:x:5:0:sync:/sbin:/bin/sync$ 7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown$
当然还有cat 的双胞胎,将文件倒着看的 tac
[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
[root@centos7 ~]# more /etc/passwd root:x:bash bin:x:nologin daemon:x:nologin adm:x:nologin shutdown:x: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/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/lp:/var/spool/lpd:/sbin/nologin
4 tail
查看文件尾部多少行
常用参数
-n 指定行数,和head类似。
[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 41 centos7 NetworkManager[567]: <warn> [1494319541.5073] dhcp4 (ens38): request timed out May 567]: <info> [1494319541.5075] dhcp4 (ens38): state changed unknown -> timeout May 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 bin:x:1 daemon:x:2 adm:x:4 7 shutdown:x: halt:x: mail:x:12
6 wc
-l 查看行数
-w 统计单词总数
-m 统计字符总数
-c 统计字节总数
[root@centos7 ~]# wc -lwcm /etc/passwd 43 87 2238 2238 /etc/passwd
7 sort
给文本排序,默认按每行首字母顺序排序
-r 由上至下整理
-n 按数字大小整理
-t 以后面的字符为分隔符
-k 选择某个字段进行排序
-f 忽略字符大小写
例如,按第三个字段进行排序
[root@centos7 ~]# sort -k 3 /etc/ abrt:x:173:173::/etc/abrt:/sbin/nologin adm:x:nologin bin:x:nologin centos:x:1000:1000:centos:/home/centos:/bin/bash chrony:x:991:988::/var/lib/chrony:/sbin/nologin daemon:x:nologin nologin games:x:100:games:/usr/games:/sbin/nologin
8 uniq
从输入中删除重复行
-d 仅仅显示重复
-u 显示不重复
例如:取/etc/passwd文件以":"为分隔符的第七个字段并去重。
[root@centos7 ~]# cut -d":" -f 7 /etc/passwd | uniq -c 1 /bin/bash 4 /sbin/nologin sync 1 /sbin/shutdown halt 34 /sbin/1 /bin/bash
最后在补充一个超实用的例子
统计日志中频繁访问的前十个IP地址
cat /var/log/httpd/access.log | cut –d" " –f 1 | sort | uniq –c | sort –nr | head