首页 > 代码库 > 查看文件内容的命令cat,tac,more,less,head,tail
查看文件内容的命令cat,tac,more,less,head,tail
cat命令
cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令。 注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。为了控制滚屏,可以按Ctrl+S键,停止滚屏;按Ctrl+Q键可以恢复滚屏。按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态。
语法
cat (选项) (参数)
选项
-n或-number:有1开始对所有输出的行数编号;
-b或--number-nonblank:和-n相似,只不过对于空白行不编号;
-s或--squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行;
-A:显示不可打印字符,行尾显示“$”;
-e:等价于"-vE"选项;
-t:等价于"-vT"选项;
参数
文件列表:指定要连接的文件列表。
实例
设ml和m2是当前目录下的两个文件
cat m1 (在屏幕上显示文件ml的内容)
cat m1 m2 (同时显示文件ml和m2的内容)
cat m1 m2 > file (将文件ml和m2合并后放入文件file中)
来自: http://man.linuxde.net/cat
tac命令
tac命令用于将文件已行为单位的反序输出,即第一行最后显示,最后一行先显示。
语法
tac (选项) (参数)
选项
-a或--append:将内容追加到文件的末尾;
-i或--ignore-interrupts:忽略中断信号。
参数
文件列表:指定要保存内容的文件列表。
来自: http://man.linuxde.net/tac
more命令
more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退出命令)。
该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示的该文件的百分比:--More--(XX%)可以用下列不同的方法对提示做出回答:
按Space键:显示文本的下一屏内容。
按Enier键:只显示文本的下一行内容。
按斜线符/:接着输入一个模式,可以在文本中寻找下一个相匹配的模式。
按H键:显示帮助屏,该屏上有相关的帮助信息。
按B键:显示上一屏内容。
按Q键:退出more命令。
语法
more (选项) (参数)
选项
-<数字>:指定每屏显示的行数;
-d:显示“[press space to continue,‘q‘ to quit.]”和“[Press ‘h‘ for instructions]”;
-c:不进行滚屏操作。每次刷新这个屏幕;
-s:将多个空行压缩成一行显示;
-u:禁止下划线;
+<数字>:从指定数字的行开始显示。
参数
文件:指定分页显示内容的文件。
实例
显示文件file的内容,但在显示之前先清屏,并且在屏幕的最下方显示完核的百分比。
more -dc file
显示文件file的内容,每10行显示一次,而且在显示之前先清屏。
more -c -10 file
来自: http://man.linuxde.net/more
less命令
less命令的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览。用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页。要退出less程序,应按Q键。
语法
less (选项) (参数)
选项
-e:文件内容显示完毕后,自动退出;
-f:强制显示文件;
-g:不加亮显示搜索到的所有关键词,仅显示当前显示的关键字,以提高显示速度;
-l:搜索时忽略大小写的差异;
-N:每一行行首显示行号;
-s:将连续多个空行压缩成一行显示;
-S:在单行显示较长的内容,而不换行显示;
-x<数字>:将TAB字符显示为指定个数的空格字符。
参数
文件:指定要分屏显示内容的文件。
来自: http://man.linuxde.net/less
head命令
head命令用于显示文件的开头的内容。在默认情况下,head命令显示文件的头10行内容。
语法
head (选项) (参数)
选项
-n<数字>:指定显示头部内容的行数;
-c<字符数>:指定显示头部内容的字符数;
-v:总是显示文件名的头信息;
-q:不显示文件名的头信息。
参数
文件列表:指定显示头部内容的文件列表。
来自: http://man.linuxde.net/head
tail命令
tail命令用于输入文件中的尾部内容。tail命令默认在屏幕上显示指定文件的末尾10行。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。如果没有指定文件或者文件名为“-”,则读取标准输入。 注意:如果表示字节或行数的N值之前有一个”+”号,则从文件开头的第N项开始显示,而不是显示文件的最后N项。N值后面可以有后缀:b表示512,k表示1024,m表示1 048576(1M)。
语法
tail (选项) (参数)
选项
--retry:即是在tail命令启动时,文件不可访问或者文件稍后变得不可访问,都始终尝试打开文件。使用此选项时需要与选项“--follow=name”连用; -c或--bytes=:输出文件尾部的N(N为整数)个字节内容;
-f或;--follow:显示文件最新追加的内容。“name”表示以文件名的方式监视文件的变化。“-f”与“-fdescriptor”等效;
-F:与选项“-follow=name”和“--retry"连用时功能相同;
-n或--line=:输出文件的尾部N(N位数字)行内容。
--pid=<进程号>:与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令;
-q或--quiet或--silent:当有多个文件参数时,不输出各个文件名;
-s<秒数>或--sleep-interal=<秒数>:与“-f”选项连用,指定监视文件变化时间隔的秒数;
-v或--verbose:当有多个文件参数时,总是输出各个文件名;
--help:显示指令的帮助信息;
--version:显示指令的版本信息。
参数
文件列表:指定要显示尾部内容的文件列表。
实例
tail file (显示文件file的最后10行)
tail +20 file (显示文件file的内容,从第20行至文件末尾)
tail -c 10 file (显示文件file的最后10个字符)
来自: http://man.linuxde.net/tail
总结:
cat 查看文件内容(正行序)
tac 查看文件内容(逆行序)
cat -A 显示行尾的行结束符$
cp /etc/init.d/iptables 1.txt
cat 1.txt 全部显示,不支持翻屏,
more 1.txt 分屏显示
空格 按屏往下翻
回车 按行往下翻
Ctrl+b 按屏往上翻
Ctrl+f 按屏往下翻
less 1.txt 比more好,支持按行往上翻,功能更强
空格 按屏往下翻
回车 按行往下翻
上 按行往上翻
下 按行往下翻
PgUp 按屏往上翻
PgDn 按屏往下翻
j 按行往下翻
k 按行往上翻
Ctrl+b 按屏往上翻
Ctrl+f 按屏往下翻
g 转到文件头
G 转到文件尾
/string 向前查找字符串string,按n(next)往前找,N往后找
?string 向后查找字符串string,按n(next)往后找,N往前找
q 退出less
head 查看文件的前10行
head -2 1.txt 查看文件1.txt的前两行
tail 查看文件的后10行
tail -3 1.txt 查看文件1.txt的后3行
tail -f 1.txt 动态的查看1.txt结尾处的内容
比如在别的地方对1.txt追加内容:echo "111222" >>1.txt,就能动态显示追加的情况
Ctrl+c退出
查看文件内容的命令cat,tac,more,less,head,tail