17. 【Linux教程】查看文件内容

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 17. 【Linux教程】查看文件内容

前面小节介绍了文件和目录相关的操作,本小节介绍如何使用 filecatmoretail 命令在不同场景下去查看文件相关信息和内容。

1. file 查看文件类型

file 命令可以用来查看文件类型,还能查看文件的编码格式,下面列举一些 file 命令的参数:

image.png

1.1 查看文件类型

这里还是以 /home 目录里面的文件为例,命令如下:

cd /home
 
ls
 
file a.txt
 
file new_dir
 
cd study/
 
file alltxt.tar
 
file alltxt.tar.gz
 
file alltxt.tar.bz2
 
file alltxt.tar.Z

执行结果如下图:

Tips:如图所示,使用 file 命令可以看到文件的编码、文件类型。

1.2 查看文件时不显示文件名

file 命令后面跟上一个 -b 参数重复一次上面的流程,命令如下:

cd /home
 
ls
 
file -b a.txt
 
file -b new_dir
 
cd study/
 
file -b alltxt.tar
 
file -b alltxt.tar.gz
 
file -b alltxt.tar.bz2
 
file -b alltxt.tar.Z

执行结果如下图:

Tips:如图所示使用 -b 参数查看的文件信息时没有打印出文件名。

1.3 查看压缩包信息

进入到 /home/study,使用 -z 参数去查看压缩包信息,命令如下:

cd /home/study
 
ls
 
file -z alltxt.tar.gz
 
file -z alltxt.tar.bz2
 
file -z alltxt.tar.Z

执行结果如下图:

Tips:如图所示,展示了压缩包相关的信息。

2. cat 查看文件内容

cat 命令可以用来查看文件内容,下面列举一些 cat 命令的参数: image.png

2.1 查看文件所有内容

这里以之前小节配置过的 /etc/sysconfig/network-scripts/ifcfg-ens160 文件为例,使用如下命令查看其中的内容:

cd /etc/sysconfig/network-scripts
 
ls
 
cat ifcfg-ens160

执行结果如下图:

Tips:在输入路径或者文件名称的时候可以使用 Tab 键来补全。

2.2 对查看内容编排

命令如下:

1. cat -b ifcfg-ens160
2. 
3. cat -n ifcfg-ens160

执行结果如下图:

Tips-b 表示排除掉空行的内容,然后对其输出编号,会后会补上一行空行展示出来。

3. more 命令查看文件内容

more 命令也用来查看文件内容,下面列举一些 more 命令的参数: image.png 这里以查看 /etc/mtools.conf 文件内容为例,命令如下:

1. cd /etc
2. 
3. more mtools.conf

执行结果如下图:


Tips : 如图中所示,可以按空格键继续浏览剩下内容,也可以按 q 键结束浏览。

4. tail 命令查看文件内容

tail 命令也用来查看文件内容,下面列举一些 tail 命令的参数: image.png

4.1 查看文件最后几行内容

/etc/mtools.conf 文件为例,如要查看最后 6 行内容,命令如下:

cd /etc
 
tail -5 mtools.conf

执行结果如下图:

Tips:使用如图所示的命令可以查看 mtools.conf 文件的最后 5 行内容。

4.2 查看指定行数的内容

/etc/mtools.conf 文件为例,如要从第 45 行开始显示内容,命令如下:

tail -n +45 mtools.conf

执行结果如下图:


Tips:使用如图所示的命令可以查看 mtools.conf 文件的第 45 行开始的内容。



4.3 监听日志文件

在实际工作中,经常会使用 -f 去监听日志新增内容,达到开发者调试的目的,这里为了演示方便,需要打开之前安装过的 MobaXterm,按照之前第 7 小节的步骤,打开两个登录窗口,示例如下:


首先进入 /home 目录,新建一个日志文件 access.log,命令如下:

cd /home
 
ls
 
touch access.log

执行结果如下图:

接下来使用 tail 命令跟上 -f 参数对 access.log 日志文件监听,命令如下:

tail -f access.log

执行结果如下图:

接下来在新打开的窗口中,进入 /home 目录,向 access.log 文件写入内容:

cd /home
 
echo "这是第一条测试内容(time=2020-05-05 18:00)" >> access.log
 
echo "这是第二条测试内容(time=2020-05-05 19:00)" >> access.log
 
echo "这是第三条测试内容(time=2020-05-05 20:00)" >> access.log

执行结果如下图:

Tips:这种监听日志的方法经常用在后端程序开发调试工作中。

此时模拟日志数据输入完成,接着打开原来的监听窗口,如下图所示:

5.小结

本小节介绍了如何使用 filecatmoretail 去查看文件内容,读者根据不同场景来选择合适的命令查看文件内容,其中 tail -f 命令经常用于后端开发日志监听,来调试代码的作用,也能帮助快速捕捉到程序异常,提升修复问题的效率。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
1天前
|
算法 Linux Windows
Linux|如何查找和删除重复文件
Linux|如何查找和删除重复文件
8 1
|
1天前
|
Linux
linux不同场景下修改文件名的五种方法
linux不同场景下修改文件名的五种方法
6 1
|
3天前
|
安全 Linux 测试技术
Kali Linux渗透测试教程:解锁黑客之门
Kali Linux渗透测试教程:解锁黑客之门
|
3天前
|
存储 Linux 程序员
tar命令详解:linux文件打包神器
tar命令详解:linux文件打包神器
|
1天前
|
Linux 数据处理 vr&ar
Linux下的ranlib命令:静态库文件的索引生成器
`ranlib`是Linux用于加速静态库(.a文件)链接的工具,它生成索引以优化查找目标文件。当链接器处理静态库时,索引能快速定位目标,提升效率。命令如`ranlib libexample.a`创建索引。注意,新工具链可能已自动包含此功能,使用前应确保库文件未含索引,避免重复生成。
|
1天前
|
关系型数据库 MySQL Shell
深入了解Linux /etc/passwd文件
深入了解Linux /etc/passwd文件
7 0
|
1天前
|
存储 Linux
深入了解Linux设备管理:字符、块和网络设备文件
深入了解Linux设备管理:字符、块和网络设备文件
9 0
|
2天前
|
Java Linux 网络安全
在Linux上搭建Maven仓库的实战教程
在Linux上搭建Maven仓库的实战教程
12 0
|
2天前
|
存储 Linux 程序员
Linux解压Zip文件命令详解
Linux解压Zip文件命令详解
|
3天前
|
监控 Linux
Linux修改fs.inotify.max_user_watches(“外部文件更改同步可能很慢”和“当前的 inotify(7) 监视限制太低”)
Linux修改fs.inotify.max_user_watches(“外部文件更改同步可能很慢”和“当前的 inotify(7) 监视限制太低”)
6 0