描述
经常查看日志的时候,会从文件的末尾往前查看,于是请你写一个 bash脚本以输出一个文本文件 nowcoder.txt中的最后5行
示例:
假设 nowcoder.txt 内容如下:
#include
using namespace std;
int main()
{
int a = 10;
int b = 100;
cout << “a + b:” << a + b << endl;
return 0;
}
你的脚本应当输出:
int a = 10;
int b = 100;
cout << “a + b:” << a + b << endl;
return 0;
}
方法1
#!/bin/bash
tail -n5 nowcoder.txt
-n1表示显示最后一行内容,如果是n10,表示显示后10行内容
tail命令详解
- tail 命令用于显示文件尾部内容,默认执行 tail 命令会输出文件最后的 10 行
- tail 的语法格式
tail [OPTION]... [FILE]...
- tail命令的选项说明
-f:循环读取
-q:不显示处理信息
-v:显示详细的处理信息
-c<数目>:显示的字节数
-n<行数>:显示文件的尾部 n 行内容
–pid=PID:与-f合用,表示在进程ID,PID死掉之后结束
-q, --quiet, --silent:从不输出给出文件名的首部
-s, --sleep-interval=S:与-f合用,表示在每次反复的间隔休眠S秒 - tail命令的实践操作
(1)显示文件的后 10 行
tail filename
(2)显示文件的后 10 行
tail -n5 filename
(3)从第5行开始显示文件内容
tail -n +5 filename
(4)实时监控文件的变化(常用)
tail -f filename
先显示文件后十行内容,然后在文件中进行写操作后,该命令会将写的内容显示。
扩展
查看文件的前5行,可以使用head命令,如
head -5 filename
查看文件的后5行,可以使用tail命令,如:
tail -5 filename 或 tail -n 5 filename
查看文件中间一段,你可以使用sed命令,如:
sed -n ‘5,20p’ filename
这样你就可以只查看文件的第5行到第20行。