more,less,head,tail
当用cat,tac命令查看文件时,文件的所有内容都会被刷出来,因为缓存有限,被刷过去的内容可能就留不住了。用cat查看个小文件还可以,查看大文件时就用到下面的命令。
more (选项)(参数) 基于VIM编辑器的文本查看工具
默认:
1 2 3 4 5 6 7 8 9 10 11 | [root@localhost tmp] # more rc.sysinit #!/bin/bash # # /etc/rc.d/rc.sysinit - run once at boot time # 。。。 。。。 if [ ! -d /proc/bus/usb ]; then modprobe usbcore > /dev/null 2>&1 && mount -n -t usbfs /proc/bus/usb / proc /bus/usb --More--(2%) |
-数字:代表每一屏可以查看的行数
1 2 3 4 5 6 7 8 9 10 | [root@localhost tmp] # more -2 rc.sysinit #!/bin/bash # [root@localhost tmp] # more -5 rc.sysinit #!/bin/bash # # /etc/rc.d/rc.sysinit - run once at boot time # # Taken in part from Miquel van Smoorenburg's bcheckrc. --More--(0%) |
-d:显示“[press space to continue,'q' to quit.]”
1 2 3 4 5 6 7 | [root@localhost tmp] # more -5d rc.sysinit #!/bin/bash # # /etc/rc.d/rc.sysinit - run once at boot time # # Taken in part from Miquel van Smoorenburg's bcheckrc. --More--(0%)[Press space to continue , 'q' to quit.] |
-c:不进行滚屏操作。每次刷新这个屏幕;
1 2 3 4 5 6 7 | 这个不好演示,大概意思就是满屏幕就是这个,他只会在这个部分刷新显示 #!/bin/bash # # /etc/rc.d/rc.sysinit - run once at boot time # # Taken in part from Miquel van Smoorenburg's bcheckrc. --More--(0%) |
-s:将多个空行压缩成一行显示,在cat中演示过。
-u:禁止下划线;
+数字:从数字行开始显示。
-------------------------------------------------------------------------------------------------------------------------
less (选项)(参数) 和more选项差不多,但是可以前后翻页,再显示完成后不退出。
-e:文件内容显示完毕后,自动退出;
1 2 3 | 在 less 操作完文本之后,不会自动退出,在末尾加上 (END) 当加上-e选项后,显示完成直接退出 |
-g:不加亮显示搜索到的所有关键词,仅显示当前显示的关键字。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | 这个选项的意义在 less 命令执行之后,输入”/关键词“之后,不进行全屏关键词泛白,对比效果如下 if [ -f /etc/sysconfig/network ]; then . /etc/sysconfig/network fi if [ -z "$HOSTNAME" -o "$HOSTNAME" = "(none)" ]; then HOSTNAME=localhost fi if [ ! -e /proc/mounts ]; then mount -n -t proc /proc /proc mount -n -t sysfs /sys /sys > /dev/null 2>&1预览了下并没有效果,在 bash 下上面这部分 if 都是泛白的,下面的部分单个 if 泛白 ------------------------------------------------------------------- if [ -f /etc/sysconfig/network ]; then . /etc/sysconfig/network fi if [ -z "$HOSTNAME" -o "$HOSTNAME" = "(none)" ]; then HOSTNAME=localhost |
-l:搜索时忽略大小写的差异;
1 | 跟-g差不多的意思,不做演示了 |
-N:每一行行首显示行号;
1 2 3 4 5 6 | 1 #!/bin/bash 2 # 3 # /etc/rc.d/rc.sysinit - run once at boot time 4 # 5 # Taken in part from Miquel van Smoorenburg's bcheckrc. 6 # |
-s:将连续多个空行压缩成一行显示;
-S:在单行显示较长的内容,而不换行显示;
-x<数字>:将TAB字符显示为指定个数的空格字符。
-------------------------------------------------------------------------------------------------------------------------
head (选项)(参数) head用来显示文件的头信息
-n数字:显示文件的头n行,n也可以省略,默认显示10行
1 2 3 4 5 6 | [root@localhost tmp] # head -n2 a ddsfjasndfkjasbdf asdgagafdg [root@localhost tmp] # head -2 a ddsfjasndfkjasbdf asdgagafdg |
-c数字:显示文件的头n个字符
1 2 | [root@localhost tmp] # head -c5 a ddsfj[root@localhost tmp] # |
-v:把文件名显示在开头
1 2 3 4 5 6 7 8 9 | [root@localhost tmp] # head -v a ==> a <== ddsfjasndfkjasbdf asdgagafdg adga ag adag a |
-------------------------------------------------------------------------------------------------------------------------
tail (选项)(参数) 默认从文本某位到-10行显示,如果参数是多个文件,会加上文件名来区分。如果在数字前面加上+号,那就是从这个数字行或字符开始显示
-c数字:从末尾开始输出数字个字符
1 2 3 | [root@localhost tmp] # tail -c3 a aa 文本末尾有结束符或各种符号 |
-c+数字:从第数字个字符开始显示
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | [root@localhost tmp] # tail a ddsfjasndfkjasbdf asdgagafdg adga ag adag a aaaaaaaaa [root@localhost tmp] # tail -c+3 a sfjasndfkjasbdf asdgagafdg adga ag adag a aaaaaaaaa |
-f:监视这个文本的变化,即在一端打开这个文本,另一端在操作文本之后保存,这端马上就会更新文本的变化
-n数字:从末尾到数字行显示,n可以省略,只能在这里省略n
1 2 3 4 5 6 7 8 9 10 11 12 13 | [root@localhost tmp] # tail a ddsfjasndfkjasbdf asdgagafdg adga ag adag a aaaaaaaaa [root@localhost tmp] # tail -n 3 a adag a aaaaaaaaa |
-n+数字:从第数字行开始显示
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | [root@localhost tmp] # tail a ddsfjasndfkjasbdf asdgagafdg adga ag adag a aaaaaaaaa [root@localhost tmp] # tail -n +3 a adga ag adag a aaaaaaaaa |
-v:当有多个参数时,分别显示其文件名,也是默认参数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | [root@localhost tmp] # tail a b ==> a <== ddsfjasndfkjasbdf asdgagafdg adga ag adag a aaaaaaaaa ==> b <== ddsfjasndfkjasbdf asdgagafdg adga ag adag a aaaaaaaaa |
-q:当有多个参数时,不显示其文件名
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | [root@localhost tmp] # tail -q a b ddsfjasndfkjasbdf asdgagafdg adga ag adag a aaaaaaaaa ddsfjasndfkjasbdf asdgagafdg adga ag adag a aaaaaaaaa |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能