003Linux查看文件内容的5个命令姿势

Linux 中查看文件内容常用的有如下 5 个命令:

cat

cat 命令常用格式示例:

  • cat [文件名] # 输出文件所有内容到屏幕上。
  • cat [文件1] [文件2] # 输出文件1、文件2所有内容到屏幕上。
  • cat [文件1] [文件2] > [文件3] # 将文件1、文件2合并,输出到文件3中,如果没有文件3会自动生成一个新的文件3。
  • cat -n [文件名] # 输出文件内容时加上行号。
  • cat -A [文件名] # 输出文件内容时显示所有隐藏字符。

more 和 less

more 命令常用格式示例:

  • more [文件名] #打开文件。
  • more -f [文件名] # 加参数-f,计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)。
  • more +[num] [文件名] # 查看指定行号以后的内容 ,eg: more +20 info.log。
  • more -[num] [文件名] # 查看指定行号以前的内容,eg: more -20 info.log。

more 命令常用的快捷键:

less 命令常用格式示例:

  • less [文件名] # 基本查看命令
  • less -m [文件名] # 类似 more 命令,显示百分比
  • less -N [文件名] # 显示行号

less 命令常用的快捷键及查找字符功能:

  • less 和more有相同的快捷键,只是不能用ctrl + c退出,用 q 快捷键退出。
  • 此外less 可以使用vim编辑器(ps:后面讲vim时会详细说)的查找命令。先 less [文件名] ,接着输入查找符号(/ 或 ?)及查找 字符,按 Enter 键后,配合n建即可查找。
  • /[查找字符] # 配合n键,从上往下查所有。
  • ?[查找字符] # 配合n键,从下往上查所有。

tail 和 head

tail 命令的常用姿势:

  • tail 一般用来查看实时日志使用,显示文件最新追加的内容,如线上服务的日志文件会不断的有内容追加,tail 命令就非常好用。
  • tail -f info.log # 不停地追加显示 info.log 文件的最后10行 ,查看实时日志时非常常用的命令。
  • tail -f n info.log # 加上n参数,不停地追加显示 info.log 文件的最后 n 行。eg: tail -f 20 info.log 。
  • tail -n 10 info.log # 查询日志尾部最后10行的日志。
  • tail -n +10 info.log # 查询10行之后的所有日志。

应用场景一:按行号查看过滤出关键字附近的日志

  • cat -n info.log |grep “debug” # 得到关键日志的行号
  • cat -n info.log |tail -n +92|head -n 20 # 选择关键字所在的中间一行, 然后查看这个关键字前10行和后10行的日志。
  • tail -n +92 # 表示查询92行之后的日志;
  • head -n 20 # 则表示在前面的查询结果里再查前 20 条记录;

应用场景二:日志内容特别多,打印在屏幕上不方便查看

  • cat -n info.log |grep “debug” |more # 这样就分页打印了,通过点击空格键翻页

  • cat -n info.log |grep “debug” > debug.txt

「不甩锅的码农」原创,转载请注明来源,未经授权禁止商业用途!同名 GZH 请关注!

Original: https://www.cnblogs.com/bilahepan/p/15811527.html
Author: 不甩锅的码农
Title: 003Linux查看文件内容的5个命令姿势

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/524170/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Redis集群的节点通信原理

    Redis集群搭建中,数据如何在节点分布的原理,下面来介绍一下节点之间是如何进行通信(节点握手) 一、基础通讯原理 1、维护集群的元数据的两种方案介绍及对比 在分布式存储中需要提供…

    Linux 2023年5月28日
    0150
  • Django 如何获取 Model 字段列表?

    在平时的开发过程中,避免不了需要获取 Model 中的字段列表。 那需要把所有字段都再复制一份吗?这样的话就太麻烦了,而且后期也不好维护。 其实,Django 内置了一个方法,可以…

    Linux 2023年6月7日
    0121
  • 通过域名查找IP地址

    1,打开cmd 2,敲入命令:nslookup 3,输入域名,如,www.baidu.com 4,得到address即IP地址 Original: https://www.cnbl…

    Linux 2023年6月8日
    099
  • 生成随机数的若干种方法

    背景: 创建账户时我们需要配置初始随机密码,使用手机号注册时需要随机验证码,抽奖活动需要随机点名,俄罗斯方块游戏需要随机出形状。这些案例都在说明一个问题,随机数据很重要!而在 Sh…

    Linux 2023年6月6日
    093
  • 解决word插入新图片后原有图片题注的交叉引用错乱的问题

    引言 在日常工作和生活中,我们经常使用word来撰写文档、论文。为了更好地管理文档中的图片以及在正文中引用图片标题,需要借助题注来实现。通过题注,可以在正文中交叉引用图片,并为引用…

    Linux 2023年6月7日
    0147
  • 最新超详细VMware下CentOS系统安装

    一、了解CentOS系统 CentOS是免费的、开源的、可以重新分发的开源操作系统,CentOS(Community Enterprise Operating System,中文意…

    Linux 2023年5月27日
    098
  • typora使用

    一:typora、配置picgo+github安装以及配置 picgo 、Node.js和typora安装包见百度网盘链接: 参考的教程如下: 二:typora使用语法 Ctrl+…

    Linux 2023年6月13日
    091
  • 如何逃离框架孤井?

    前言 前面我发过一篇文章,脱离了Spring询问大家能不能继续开发,结果文章下面的评论和回复都告诉我大家伙的基础打得很牢固,该咋写还是咋写。看得我在这内卷的时代瞬间躺平。 那么今天…

    Linux 2023年6月13日
    099
  • 解决报错 Microsoft Visual C++ 14.0 is required

    环境:Surface Windows 10 专业版 问题:安装 Python3 的第三方库 py7zr 时不成功。而报错的是另外一个依赖库 pycryptodomex distut…

    Linux 2023年6月14日
    0116
  • redis启动失败 提示Unregistered Authentication Agent for unix-process:6176

    使用宝塔软件安装的redis 一直没启动起来。 使用 journalctl -xe 命令查看原因,发现redis.pid已经存在。 进入该目录,删除redis.pid。 再使用sy…

    Linux 2023年5月28日
    0340
  • Linux 内核软死锁(soft lockup)bug原因分析

    由日志我们看到,CPU一直处于超负载运行,因此导致机器产生断链的告警 解决方法: echo 30 > /proc/sys/kernel/watchdog_thresh sys…

    Linux 2023年6月13日
    0103
  • 项目经验示例

    一,期中项目经验示例 1,根据现有结构部署工具(PXE+kickstart)2,结合应用系统需求定制部署模版3,制作系统优化等一键执行脚本4,自动化部署实施5,根据定制的优化内容对…

    Linux 2023年6月7日
    090
  • @Import 源码解析

    转发请注明出处: @Import通过快速导入的方式实现把实例加入spring的IOC容器中;一般@EnableXXX注解是通过@Import实现具体的功能(@EnableXXX注解…

    Linux 2023年6月14日
    061
  • [Python]Tkinter 做简单的窗口视窗GUI(参考莫烦笔记)

    Label & Button 标签与按钮 Entry & Text 输入与文本框 ListBox 列表部件 Radiobutton 选择按钮 Scale 尺度 Ch…

    Linux 2023年6月13日
    0136
  • Linux_shell基础

    注意, 这里在运行时一定要写成./test.sh,而不是 test.sh, 运行其它二进制的程序也一样,直接写 test.sh,Linux 系统会去 PATH(环境变量) 里寻找有…

    Linux 2023年5月27日
    0116
  • UE4编辑器使用PS4/NS PRO手柄

    在Steam里,点击添加非Steam游戏,把Unreal Engine添加进去,进大屏幕模式,设置手柄配置为强制开启即可! 网上看到各种教程,都太复杂了………

    Linux 2023年6月6日
    0124
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球