失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Linux查询命令(cat more less head tail)的用法与区别。

Linux查询命令(cat more less head tail)的用法与区别。

时间:2018-07-06 21:29:19

相关推荐

Linux查询命令(cat more less head tail)的用法与区别。

cat [optin]...[file]...

主要用途

显示文件内容,如果没有文件或文件为-则读取标准输入。将多个文件的内容进行连接并打印到标准输出。显示文件内容中的不可见字符(控制字符、换行符、制表符等)。

参数

file(可选):要处理的文件,可以为一或多个。

选项

-A, --show-all 等价于"-vET"组合选项。 -b, --number-nonblank 只对非空行编号,从1开始编号,覆盖"-n"选项。 -e 等价于"-vE"组合选项。 -E, --show-ends 在每行的结尾显示'$'字符。 -n, --number 对所有行编号,从1开始编号。 -s, --squeeze-blank 压缩连续的空行到一行。-t 等价于"-vT"组合选项。 -T, --show-tabs 使用"^I"表示TAB(制表符)。-u POSIX兼容性选项,无意义。 -v, --show-nonprinting 使用"^"和"M-"符号显示控制字符,除了LFD(line feed,即换行符'\n')和TAB(制表符)。 --help 显示帮助信息并退出。--version 显示版本信息并退出。

返回值

返回状态为成功除非给出了非法选项或非法参数。

实例

# 合并显示多个文件 cat ./1.log ./2.log ./3.log# 显示文件中的非打印字符、tab、换行符 cat -A test.log # 压缩文件的空行 cat -s test.log # 显示文件并在所有行开头附加行号 cat -n test.log # 显示文件并在所有非空行开头附加行号cat -b test.log # 将标准输入的内容和文件内容一并显示 echo '######' |cat - test.log

more

more命令是一个基于vi编辑器文本过滤器,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作。more名单中内置了若干快捷键,常用的有H(获得帮助信息),Enter(向下翻滚一行),空格(向下滚动一屏),Q(退出命令)。

该命令一次显示一屏文本,满屏后停下来,并且在屏幕的底部出现一个提示信息,给出至今己显示的该文件的百分比:--More--(XX%)可以用下列不同的方法对提示做出回答:

Space键:显示文本的下一屏内容。按Enter键:只显示文本的下一行内容。按斜线符|:接着输入一个模式,可以在文本中寻找下一个相匹配的模式。按H键:显示帮助屏,该屏上有相关的帮助信息。按B键:显示上一屏内容。按Q键:退出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

less

less命令的作用与more十分相似,都可以用来浏览文字档案的内容,不同的是less命令允许用户向前或向后浏览文件,而more命令只能向前浏览。用less命令显示文件时,用PageUp键向上翻页,用PageDown键向下翻页。要退出less程序,应按Q键。

选项

-e:文件内容显示完毕后,自动退出;

-f:强制显示文件;

-g:不加亮显示搜索到的所有关键词,仅显示当前显示的关键字,以提高显示速度;

-l:搜索时忽略大小写的差异;

-N:每一行行首显示行号;

-s:将连续多个空行压缩成一行显示;

-S:在单行显示较长的内容,而不换行显示;

-x<数字>:将TAB字符显示为指定个数的空格字符。

实例

sudo less /var/log/shadowsocks.log

head

主要用途

在未指定行数时默认显示前10行。处理多个文件时会在各个文件之前附加含有文件名的行。当没有文件或文件为-时,读取标准输入。

选项

-c, --bytes=[-]NUM 显示前NUM字节;如果NUM前有"-",那么会打印除了文件末尾的NUM字节以外的其他内容。

-n, --lines=[-]NUM 显示前NUM行而不是默认的10行;如果NUM前有"-",那么会打印除了文件末尾的NUM行以外的其他行。

-q, --quiet, --silent 不打印文件名行。

-v, --verbose 总是打印文件名行。

-z, --zero-terminated 行终止符为NUL而不是换行符。

--help 显示帮助信息并退出。

--version 显示版本信息并退出。

NUM可以有一个乘数后缀:

b 512

kB 1000

k 1024

MB 1000*1000

M 1024*1024

GB 1000*1000*1000 G 1024*1024*1024

T、P、E、Z、Y等以此类推。

也可以使用二进制前缀:

KiB=K

MiB=M

以此类推。

实例

# 查看历史文件的前6行:

[user2@pc ~]$ head -n 6 ~/.bash_history #1575425555

cd ~

#1575425558

ls -lh

#1575425562 vi ~/Desktop/ZhuangZhu-74.txt

# 查看多个文件:

[user2@pc ~]$ head -n ~/.bash_history ~/.bas

hrc

==> /allhome/user2/.bash_history <== #1575425555

cd ~

#1575425558

ls -lh

#1575425562

vi ~/Desktop/ZhuangZhu-74.txt

#1575425566

uptime

#1575425570

find ~/ -maxdepth 3 -name 'test.sh' -exec lh {} \; ==> /allhome/user2/.bashrc <==

# .bashrc

# forbid use Ctrl+D to exit shell.

set -o ignoreeof

# Source global definitions. if [ -f /etc/bashrc ]; then . /etc/bashrc fi

tail

tail命令用于输入文件中的尾部内容。tail命令默认在屏幕上显示指定文件的末尾10行。如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。如果没有指定文件或者文件名为“-”,则读取标准输入。

注意:如果表示字节或行数的N值之前有一个”+”号,则从文件开头的第N项开始显示,而不是显示文件的最后N项。N值后面可以有后缀:b表示512,k表示1024,m表示1 048576(1M)。

选项

--retry:即是在tail命令启动时,文件不可访问或者文件稍后变得不可访问,都始终尝试打开文件。使用此选项时需要与选项“——follow=name”连用;

-c<N>或——bytes=<N>:输出文件尾部的N(N为整数)个字节内容;

-f<name/descriptor>或;--follow<nameldescript>:显示文件最新追加的内容。“name”表示以文件名的方式监视文件的变化。“-f”与“-fdescriptor”等效; -F:与选项“-follow=name”和“--retry"连用时功能相同;

-n<N>或——line=<N>:输出文件的尾部N(N位数字)行内容。

--pid=<进程号>:与“-f”选项连用,当指定的进程号的进程终止后,自动退出tail命令;

-q或——quiet或——silent:当有多个文件参数时,不输出各个文件名;

-s<秒数>或——sleep-interal=<秒数>:与“-f”选项连用,指定监视文件变化时间隔的秒数;

-v或——verbose:当有多个文件参数时,总是输出各个文件名;

--help:显示指令的帮助信息; --version:显示指令的版本信息。

实例

tail file #(显示文件file的最后10行)

tail -n +20 file #(显示文件file的内容,从第20行至文件末尾)

tail -c 10 file #(显示文件file的最后10个字符)

tail -25 mail.log # 显示 mail.log 最后的 25 行

tail -f mail.log # 等同于--follow=descriptor,根据文件描述符进行追踪,当文件改名或被删除,追踪停止

tail -F mail.log # 等同于--follow=name --retry,根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪

如果觉得《Linux查询命令(cat more less head tail)的用法与区别。》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。