tail

tail命令用于输入文件中的尾部内容,不指定文件时,作为输入信息进行处理。tail命令默认在屏幕上显示指定文件的末尾10行。命令从指定点开始将文件写到标准输出,使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把文件里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容 ,常用于查看日志 。常用查看日志文件。

格式

tail [参数] [文件]

参数选项

参数 备注
-f 显示文件最新追加的内容,循环读取
-q 不显示处理信息,当有多个文件参数时,不输出各个文件名
-v 显示详细的处理信息,当有多个文件参数时,总是输出各个文件名
-c 显示的字节数
-n 显示行数
--pid 与-f合用,表示在进程ID,PID死掉之后结束
-s, -s或--sleep-interal=<秒数 常与“-f”选项连用,指定监视文件变化时间隔的秒数

实例

  • 显示文件末尾内容

    命令: **tail -n 5 myFile **

[root@VM_0_9_centos ~]# cat myFile
this is line 1;
this is line 2;
this is line 3;
tihs is line 4;
this is line 5;
this is line 6;
this is line 7;
this is line 8;
this is line 9;
this is line 10;
this is line 11;
this is line 12;
this is line 13;
this is line 14;
[root@VM_0_9_centos ~]# tail -n -5 myFile
this is line 10;
this is line 11;
this is line 12;
this is line 13;
this is line 14;
[root@VM_0_9_centos ~]#
  • 从第5行开始显示文件

    命令: **tail -n +5 myFile **

[root@VM_0_9_centos ~]# tail -n +5 myFile
this is line 5;
this is line 6;
this is line 7;
this is line 8;
this is line 9;
this is line 10;
this is line 11;
this is line 12;
this is line 13;
this is line 14;
  • 循环查看文件内容

    命令: tail -f myLog.log

[root@VM_0_9_centos ~]# ping www.baidu.com >> myLog.log &
[1] 32614
[root@VM_0_9_centos ~]# tail -f myLog.log
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=4 ttl=54 time=2.74 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=5 ttl=54 time=2.73 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=6 ttl=54 time=2.81 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=7 ttl=54 time=2.72 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=8 ttl=54 time=2.73 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=9 ttl=54 time=2.78 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=10 ttl=54 time=2.76 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=11 ttl=54 time=2.75 ms
64 bytes from 14.215.177.38 (14.215.177.38): icmp_seq=12 ttl=54 time=2.72 ms
...

相关

nohup 与 & 的区别

  • nohup -- invoke a utility immune to hangups:运行命令忽略挂起信号

    & :是指后台运行

    nohup的功能和& 之间的功能并不相同。其中,nohup 可以使得命令永远运行下去和用户终端没有关系。当我们断开ssh 连接的时候不会影响他的运行。而& 表示后台运行。当ssh 断开连接的时候(用户退出或挂起的时候),命令也自动退出。可以把两者结合起来使用:

    当然我们可以把两者结合起来使用:

    nohup command &

    来实现命令的后台运行并且和用户终端没有关系。

  • 例子

    ping www.baidu.com >> myLog.log &

    ping www.baidu.com >> myLog.log任务放到后台 ,此时ctrl+c,该任务继续正常运行, 前台依然能够接收任何输入 ,因为对SIGINT信号免疫 。关闭shell退出当前session则该任务进程关闭,可见&的后台并不硬(因为对SIGHUP信号不免疫),通过jobs命令可以查询到当前任务

    nohup ping www.baidu.com >> myLog.log

    nohup的意思是忽略SIGHUP信号, 所以当运行ping www.baidu.com >> myLog.log的时候, 关闭shell, 那么该任务进程还是存在的(对SIGHUP信号免疫)。 但是,此时shell会关闭标准输入,前台不再能够接收任何输入(标准输入),重定向标准输出和标准错误到当前目录下的nohup.out文件 ,如果你直接在shell中用ctrl+c, 那么, 该任务进程也是会消失的(因为对SIGINT信号不免疫);

    #nohup ping www.baidu.com >> myLog.log &  这个会报错
    nohup ping www.baidu.com >> myLog.log 2>&1

    ping www.baidu.com >> myLog.log任务放到后台,但是依然可以使用标准输入,前台能够接收任何输入,重定向标准输出和标准错误到当前目录下的nohup.out文件,即使关闭shell退出当前session依然继续运行。

查看当前的后台任务

  • jobs命令

    -l选项可显示所有任务的PID,jobs的状态可以是running, stopped,Terminated,但是如果任务被终止了(kill),shell从当前的shell环境已知的列表中删除任务的进程标识;也就是说,jobs命令显示的是当前shell环境中所起的后台正在运行或者被挂起的任务信息

参考

每天一个linux命令:tail(16)的更多相关文章

  1. 每天一个linux命令(16):tail命令

    版权声明更新:2017-05-20博主:LuckyAlan联系:liuwenvip163@163.com声明:吃水不忘挖井人,转载请注明出处! 1 文章介绍 本文介绍了Linux下面的mv命令. 2. ...

  2. 每天一个 Linux 命令(16):which命令

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索: which  查看可执行文件的位置. whereis 查看文件的位置. locate   配合数据库查看文件位置 ...

  3. 每天一个linux命令(16):which命令

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:        which  查看可执行文件的位置.       whereis 查看文件的位置.         ...

  4. 每天一个Linux命令(16)--which命令

    把昨天的,留给昨天:今日,你将重新开始. 好的,在第一个阶段我们学习了  文件目录的操作命令: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 ls cd pwd mkdir ...

  5. 【转】每天一个linux命令(16):which命令

    原文网址:http://www.cnblogs.com/peida/archive/2012/11/08/2759805.html 我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面 ...

  6. 每天一个Linux命令(16)which命令

    which命令用于查找并显示给定命令的绝对路径. 环境变量PATH中保存了查找命令时需要遍历的目录.which指令会在环境变量$PATH设置的目录里查找符合条件的文件.也就是说,使用which命令,就 ...

  7. 每天一个linux命令(16):whereis 命令

    whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b).man说明文件(参数-m)和源代码文件(参数-s).如果省略参数,则返回所有信息. 和 find相比,whereis查找的速度 ...

  8. 每天一个 Linux 命令(16):which whereis locate命令

    which  查看可执行文件的位置. whereis 查看文件的位置. locate   配合数据库查看文件位置.#whereis 和locate是从文件数据库里查找 数据库默认一个星期更新一次,所有 ...

  9. 每天一个 Linux 命令(21):find命令之xargs

    在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...

  10. 每天一个linux命令目录

    出处:http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每 ...

随机推荐

  1. 30个有关Python的小技巧,给程序员的 30 个基本 Python 贴士与技巧

    30个有关Python的小技巧 2013/07/04 · Python, 开发 · 4 评论 · Python 分享到: 66 本文由 伯乐在线 - Kevin Sun 翻译.未经许可,禁止转载!英文 ...

  2. 批量执行SQL脚本

    新建文件夹all_sql,并将需要执行的sql脚本放入其中. 新建bat脚本,执行即可,ORACLE 也可改Mysql,按需:如下 ::echo off :: @echo off echo 开始执行数 ...

  3. 第 3 章 前端基础之JavaScript

    一.JavaScript概述 1.javascripts的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中),后将其改名ScriptE ...

  4. 关于狗书《Flask web开发 基于python的Web开发应用实战》中加入用户隐私功能

    目前是第二次撸狗书,在用户页面这一块我个人觉得有些问题(基于交互设计).按理来说,我作为一个权限只有User的个人用户来说,肯定不喜欢让别人看到我的真实姓名,地址之类的敏感信息.所以我应该是可以设置成 ...

  5. 《JAVA设计模式》之单例模式(Singleton)

    在阎宏博士的<JAVA与模式>一书中开头是这样描述单例模式的: 作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例.这个类称为单例类. 单例模式的 ...

  6. 三级级联(js实现)

    <!DOCTYPE html> <html>    <head>        <meta charset="UTF-8">     ...

  7. HashMap之扰动函数和低位掩码

    我们都知道,hashMap在实现的时候,为了寻找在数组上的位置,主要做了两件事 int hash = hash(key); int i = indexFor(key, table.length); 这 ...

  8. P1021 邮票面值设计(dfs+背包dp)

    P1021 邮票面值设计 题目传送门 题意: 给定一个信封,最多只允许粘贴N张邮票,计算在给定K(N+K≤15N+K≤15)种邮票的情况下 (假定所有的邮票数量都足够),如何设计邮票的面值,能得到最大 ...

  9. Thinkphp在nginx设置同域名二级目录访问

    Thinkphp在nginx设置同域名二级目录访问,是因为最近弄一个小程序项目,要https,但是只有单个域名,不能通配域名,所有只好用二级目录,thinkphp二级目录访问要怎么设置呢 下面是ngi ...

  10. 32.Group Anagrams(相同元素的不同组合)

    Level:   Medium 题目描述: Given an array of strings, group anagrams together. Example: Input: ["eat ...