常用的文件查看命令
常用的文件查看命令
常用参数
-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
[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
分页查看文件内容,空格键翻页,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%)
查看文件首部多少行
-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
查看文件尾部多少行
常用参数
-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
从输入中删除重复行
-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