2021-01-09:linux中,某一个实时日志通过什么命令查?
福哥答案2020-01-09:
[答案来自此链接:](https://www.zhihu.com/question/438536200)
1.tail
tail -f
首先就是 tail -f,tail 命令是实时显示日志文件的最常用解决方案,加上 -f 参数可以实时拉取日志最新的更新:
tail -f /var/log/access.log
同时,默认是查看最后 10 行,可以加上行数增加查看的最后的行数,例如查看最后 100 行:
tail -00f /var/log/access.log
并且,tail 可以使用匹配符匹配多个文件,例如:
tail -100f /var/log/access*.log
如果你的日志会滚动,那么可以使用 -F 参数,这样会在文件滚动之后追踪新文件,而不是老的文件。
tail -F /var/log/access.log。
底层原理是:
tail.c
/* Tail N_FILES files forever, or until killed.
The pertinent information for each file is stored in an entry of F.
Loop over each of them, doing an fstat to see if they have changed size,
and an occasional open/fstat to see if any dev/ino pair has changed.
If none of them have changed size in one iteration, sleep for a
while and try again. Continue until the user interrupts us. */
static void tail_forever (struct File_spec *f, size_t n_files, double sleep_interval)
{
}
简而言之就是先将匹配到的文件加入到数组中,定时遍历这个数组,利用fstat函数检查每个文件的大小变化,如果有变化,就读取上次记录的大小到当前记录的大小的文件内容,并输出。注意,如果文件变化的越快(但是也不用太担心,硬盘写入没那么快,不可能超过内存写入速度),占用的内存越多。
2.less命令
less 命令之后键入 Shift+F,这样可以实时追踪最新更新。但是,这样会把文件内容的大部分载入内存中,如果日志文件很大,会吃掉很多内存,不推荐这种做法。
***
[评论](https://user.qzone.qq.com/3182319461/blog/1610148967)
2021-01-09:linux中,某一个实时日志通过什么命令查?的更多相关文章
- 在Linux中搭建一个FTP服务器
在Linux中搭建一个ftp服务器,以供两个工作小组保管文件使用.禁用匿名.第一个小组使用ftp账号:ftp1,工作目录在:/var/ftp/ftp1:第二个小组使用ftp2,工作目录在:/var/f ...
- 在ubuntu linux 中编写一个自己的python脚本
在ubuntu linux 中编写一个自己的简单的bash脚本. 实现功能:终端中输入简单的命令(以pmpy为例(play music python),为了区别之前说的bash脚本添加了py后缀),来 ...
- 在ubuntu linux 中编写一个自己的bash脚本
在ubuntu linux 中编写一个自己的简单的bash脚本. 实现功能:终端中输入简单的命令(以pm为例(play music)),来实现音乐的播放.注:本人ununut中安装了audacious ...
- Linux中搭建一个ftp服务器详解
来源:Linux社区 作者:luzhi1024 详解Linux中搭建一个ftp服务器. ftp工作是会启动两个通道:控制通道 , 数据通道在ftp协议中,控制连接均是由客户端发起的,而数据连接有两种 ...
- (转)如何在Linux中统计一个进程的线程数
如何在Linux中统计一个进程的线程数 原文:http://os.51cto.com/art/201509/491728.htm 我正在运行一个程序,它在运行时会派生出多个线程.我想知道程序在运行时会 ...
- [转帖]Linux教程(8)-Linux中的进程和日志㐇、
Linux教程(8)-Linux中的进程和日志 2018-08-20 23:42:23 钱婷婷 阅读数 3554更多 分类专栏: Linux教程与操作 Linux教程与使用 版权声明:本文为博主原 ...
- 在linux中怎么查看错误日志
cat或者tail -f命令 日 志 文 件 说 明 /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一/var/log/secure 与安全 ...
- linux 中更改用户权限和用户组的命令chmod,chgrp实例
linux 中更改用户权限和用户组的命令实例; 增加权限给当前用户 chmod +wx filename chmod -R 777 /upload 用户组 chgrp -R foldname zdz ...
- linux中判断一个命令是否执行成功
每一条基本命令执行后都有一个返回码,该返回码是用$?表示,执行成功的返回码是0,例如:if [ $? -ne 0 ];then 上一命令执行失败时的操作else 上一命令执行成功时的操作fi例如lin ...
- 如何在 Linux 中统计一个进程的线程数
编译自:http://ask.xmodulo.com/number-of-threads-process-linux.html作者: Dan Nanni原创:LCTT https://linux.cn ...
随机推荐
- C#中Base64转换为byte[]再进行处理
byte[] arr = Convert.FromBase64String(temp.Substring(temp.IndexOf(",") + 1)); using (Strea ...
- 接口自动化框架两大神器-正则提取器和Jsonpath提取器
一 接口自动化框架 一 框架结构 二 结构说明 - API 用于封装被测系统的接口(用request模块封装的请求方法) - TestCase 将一个或多个接口封装成测试用例,并使用UnitTest管 ...
- Zip Slip漏洞审计实战
前言 最近看到许少的推有说到Zip Slip这个漏洞导致的RCE,其实我在代码审计的时候确实发现有不少功能模块都是使用ZIP来解压,其实还是在真实系统中经常见到的. 于是想着好久没有写过博客了,想借着 ...
- Agora 教程丨如何实现15mins自主搭建一个教育平台?
[ 前言 ] 2020 年对于全球而言都是非常特殊的一年,人与人之间的"物理连结"受到了严重影响,日常的生活.工作大都也逐渐向线上转移.受此影响,大量的线下业务也加速了线上转型,这 ...
- webpack原理(1):Webpack热更新实现原理代码分析
热更新,主要就是把前端工程 文件变更,即时编译,然后通知到浏览器端,刷新代码. 服务单与客户端通信方式有:ajax 轮询,EventSource.websockt. 客户端刷新一般分为两种: 整体页面 ...
- SpringBoot——定制错误页面及原理
更多内容,前往 IT-BLOG 一.SpringBoot 默认的错误处理机制 [1]浏览器返回的默认错误页面如下: ☞ 浏览器发送请求的请求头信息如下:text/html 会在后面的源码分析中说到 ...
- Rainbond的 Gateway API 插件制作实践
Gateway API 作为新一代的流量管理标准,对原有 Ingress 的扩展不规范.移植性差等问题做出了改进.从兼容K8s生态和优化网关体验出发,Rainbond 支持以插件的形式扩展平台网关能力 ...
- 团队如何选择合适的Git分支策略?
现代软件开发过程中要实现高效的团队协作,需要使用代码分支管理工具实现代码的共享.追溯.回滚及维护等功能.目前流行的代码管理工具,包括CVS,SVN,Git,Mercurial等. 相比CVS和SVN的 ...
- python中的强制等待、隐性等待、显性等待
运行结果过程中出现Unable to locate element时,1.先确定元素是否定位有误.2.再确定运行过程中是否等待不到位,可以截图,查看查找时页面的状态. 1.使用强制等待 --辅助 2. ...
- [SrpingBoot]初步搭建springboot应用,报错:Failed to configure a DataSource: 'url' attribute is not specified and no embedd[转载]
1 错误信息 Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource ...