tail命令与head命令用法相似,tail命令用于查看文档的尾端指定数量的字符块,默认显示文档的最后 10 行,
如果给定的文件不止一个,则在显示的每个文件前面加一个文件名标题。
tail命令的帮助文档
DESCRIPTION
Print the last 10 lines of each FILE to standard output. With more than one FILE, precede each
with a header giving the file name.
With no FILE, or when FILE is -, read standard input.
Mandatory arguments to long options are mandatory for short options too.
-c, --bytes=[+]NUM
output the last NUM bytes; or use -c +NUM to output starting with byte NUM of each file
-f, --follow[={name|descriptor}]
output appended data as the file grows;
an absent option argument means ‘descriptor‘
-F same as --follow=name --retry
-n, --lines=[+]NUM
output the last NUM lines, instead of the last 10; or use -n +NUM to output starting with
line NUM
--max-unchanged-stats=N
with --follow=name, reopen a FILE which has not
changed size after N (default 5) iterations to see if it has been unlinked or renamed (this
is the usual case of rotated log files); with inotify, this option is rarely useful
2、命令选项
-c, --bytes=K k,显示文档结尾的前 k 字节,+k,不显示文档开始的前 k-1 字节 -f, --follow[={name|descriptor}] 动态监视文档最新追加的内容 -n, --lines=K k,显示文档结尾的 k 行,+k,不显示文档开始的前 k-1 行 -q, --quiet, --silent 当有多个文件参数时,不输出各个文件名 -s, --sleep-interval=N 与“-f”选项连用,指定监视文件变化时间隔的秒数 --help 显示此帮助信息并退出 --version 显示版本信息并退出
实例:
ubuntu:~/test$ cat lines.txt 01 02 03 04 05 06 07 08 09 10 11 12 ubuntu:~/test$ tail -5 lines.txt 08 09 10 11 12 ubuntu:~/test$
ubuntu:~/test$ tail +10 lines.txt 10 11 12 ubuntu:~/test$
NR表示从awk开始执行后,按照记录分隔符读取的数据次数,默认的记录分隔符为换行符,因此默认的就是读取的数据行数,NR可以理解为Number of Record的缩写。
在awk处理多个输入文件的时候,在处理完第一个文件后,NR并不会从1开始,而是继续累加,因此就出现了FNR,每当处理一个新文件的时候,FNR就从1开始计数,FNR可以理解为File Number of Record。
NF表示目前的记录被分割的字段的数目,NF可以理解为Number of Field。
-b:仅显示行中指定直接范围的内容; -c:仅显示行中指定范围的字符; -d:指定字段的分隔符,默认的字段分隔符为“TAB”; -f:显示指定字段的内容; -n:与“-b”选项连用,不分割多字节字符; --complement:补足被选择的字节、字符或字段; --out-delimiter=<字段分隔符>:指定输出内容是的字段分割符; --help:显示指令的帮助信息; --version:显示指令的版本信息。
Linux sed 命令是利用脚本来处理文本文件。
sed 可依照脚本的指令来处理、编辑文本文件。
Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。
sed [-hnV][-e<script>][-f<script文件>][文本文件]
参数说明:
动作说明:
给定一个文本文件 file.txt
,请只打印这个文件中的第十行。
tail -n +10 file.txt | head -1 awk ‘NR==10‘ file.txt sed -n 10p file.txt cat -n file.txt | grep -E "^[[:space:]]{4}10" | cut -f1 --complement
原文:https://www.cnblogs.com/51try-again/p/11191098.html