Skip to content

查看日志

作者:Atom
字数统计:936 字
阅读时长:3 分钟

此处总结下常用查看日志的命令

tail

作用及使用场景

  • 功能: 显示文件的末尾内容,默认为显示最后10行
  • 用途: 通常用于查看日志文件、实时监控文件的变化
  • 注意:如果表示字节或行数的 N 值之前有一个”+”号,则从文件开头的第 N 项开始显示,而不是显示文件的最后 N 项。N 值后面可以有后缀:b 表示 512,k 表示 1024,m 表示 1 048576(1M)

例子

bash
tail file # 显示文件file的最后10行
tail +20 file # 显示文件file的内容,从第20行至文件末尾
tail -c 10 file # 显示文件file的最后10个字符

Linux 如何显示一个文件的某几行(中间几行)

从第 3000 行开始,显示 1000 行。即显示 3000~3999 行

bash
cat filename | tail -n +3000 | head -n 1000

显示 1000 行到 3000 行

bash
cat filename| head -n 3000 | tail -n +1000

部分参数区别

bash
tail -n 1000 # 显示最后 1000 行

tail -n +1000 # 从 1000 行开始显示,显示 1000 行以后的

cat

作用及使用场景

  • 功能: 连接文件并打印到标准输出,也可以用于创建文件
  • 用途: 用于查看文件内容,将多个文件连接起来,或创建新文件

使用案例如下:

一次显示整个文件

bash
cat filename

从键盘创建一个文件

bash
cat > filename

只能创建新文件,不能编辑已有文件.

将几个文件合并为一个文件

bash
cat file1 file2 > file

参数:

  • -n 或 --number: 由 1 开始对所有输出的行数编号
  • -b 或 --number-nonblank: 和 -n 相似,只不过对于空白行不编号
  • -s 或 --squeeze-blank: 当遇到有连续两行以上的空白行,就代换为一行的空白行
  • -v 或 --show-nonprinting

例: 把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里

sh
cat -n textfile1 > textfile2

把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。

sh
cat -b textfile1 textfile2 >> textfile3

把 test.txt 文件扔进垃圾箱,赋空值 test.txt

sh
cat /dev/null > /etc/test.txt

注意

>意思是创建,>>是追加

tac

作用及使用场景

  • 功能: 是 cat 命令的反转,按行反向显示文件内容
  • 用途: 适用于需要反向查看文件内容的场景

作用及使用场景

  • 功能: 显示文件的开头内容,默认为显示前10行
  • 用途: 通常用于查看文件的开头部分,快速预览文件的内容
bash
head -n 1000 # 显示前面 1000 行

echo

作用及使用场景

  • 功能: 打印文本内容到标准输出
  • 用途: 主要用于在脚本中输出文本或变量的值
bash
echo "the echo command test!" > a.sh

这个就会在 a.sh 文件中输出“the echo command test!”这一行文字!

该命令的一般格式为: echo [ -n ]

字符串其中选项n表示输出文字后不换行;字符串能加引号,也能不加引号。

echo 命令输出加引号的字符串时,将字符串原样输出; 用 echo 命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。

sed

作用及使用场景

  • 功能: 流文本编辑器,用于对文本进行流式编辑和转换
  • 用途: 可以进行搜索替换、删除或替换特定行等操作
bash
sed -n '5,10p' filename

这样你就可以只查看文件的第 5 行到第 10 行。