Linux总结(十二):linux文件显示命令 cat,more,less,head,tail

2024-04-28 05:18

本文主要是介绍Linux总结(十二):linux文件显示命令 cat,more,less,head,tail,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、cat命令:连接文件或打印输出

        cat 命令可以用来显示文本文件的内容(类似于 DOS 下的 type 命令),也可以把几个文件内容附加到另一个文件中,即连接合并文件。关于此命令,有人认为写 cat 命令的人是因为喜欢猫,因此给此命令起名为“cat”,其实不然,cat 是 concatenate(连接、连续)的简写。

1、基本命令

[root@localhost ~]# cat [选项] 文件名
或者
[root@localhost ~]# cat 文件1 文件2 > 文件3
cat 命令常用选项及含义
选项含义
-A相当于 -vET 选项的整合,用于列出所有隐藏符号;
-E列出每行结尾的回车符 $;
-n对输出的所有行进行编号;
-b同 -n 不同,此选项表示只对非空行进行编号。
-T把 Tab 键 ^I 显示出来;
-V列出特殊字符;
-s当遇到有连续 2 行以上的空白行时,就替换为 1 行的空白行。

        注意,cat 命令用于查看文件内容时,不论文件内容有多少,都会一次性显示。如果文件非常大,那么文件开头的内容就看不到了。不过 Linux 可以使用PgUp+上箭头组合键向上翻页,但是这种翻页是有极限的,如果文件足够长,那么还是无法看全文件的内容。

        因此,cat 命令适合查看不太大的文件。

2、使用

[root@localhost ~]# cat anaconda-ks.cfg
[root@localhost ~]# cat -n anaconda-ks.cfg
#如果使用 "-n" 选项,则会显示行号。
[root@localhost ~]# cat -A anaconda-ks.cfg
#如果使用 "-A" 选项,则相当于使用了 "-vET" 选项,可以查看文本中的所有隐藏符号,
#包括回车符($)、Tab 键(^I)等。
cat file1.txt file2.txt > file3.txt
#将文件 file1.txt 和 file2.txt 的内容合并后输出到文件 file3.txt 中

二、more命令:分页显示文件内容

        在讲解 cat 命令时,我们留下了一个疑问,即当使用 cat 命令查看文件内容时,如果文件过大,以至使用PgUp+上箭头组合键向上翻页也无法看全文件中的内容,more 命令可以分页显示文本文件的内容,使用者可以逐页阅读文件中内容。

1、基本命令

[root@localhost ~]# more [选项] 文件名
more 命令选项及含义
选项含义
-f计算行数时,以实际的行数,而不是自动换行过后的行数。
-p不以卷动的方式显示每一页,而是先清除屏幕后再显示内容。
-c跟 -p 选项相似,不同的是先显示内容再清除其他旧资料。
-s当遇到有连续两行以上的空白行时,就替换为一行的空白行。
-u不显示下引号(根据环境变量 TERM 指定的终端而有所不同)。
+n从第 n 行开始显示文件内容,n 代表数字。
-n一次显示的行数,n 代表数字。

      more 命令的执行会打开一个交互界面,以下是交互命令:

more 命令交互指令及功能
交互指令功能
h 或 ?显示 more 命令交互命令帮助。
q 或 Q退出 more。
v在当前行启动一个编辑器。
:f显示当前文件的文件名和行号。
!<命令> 或 :!<命令>在子Shell中执行指定命令。
回车键向下移动一行。
空格键向下移动一页。
Ctrl+l刷新屏幕。
=显示当前行的行号。
'转到上一次搜索开始的地方。
Ctrf+f向下滚动一页。
.重复上次输入的命令。
/ 字符串搜索指定的字符串。
d向下移动半页。
b向上移动一页。

2、基本使用

[root@localhost ~]# more anaconda-ks.cfg
[root@localhost ~]# more -10c anaconda-ks.cfg

三、head命令:显示文件开头的内容

1、基本格式:

[root@localhost ~]# head [选项] 文件名
head 命令常用选项及含义
选项含义
-n K这里的 K 表示行数,该选项用来显示文件前 K 行的内容;如果使用 "-K" 作为参数,则表示除了文件最后 K 行外,显示剩余的全部内容。
-c K这里的 K 表示字节数,该选项用来显示文件前 K 个字节的内容;如果使用 "-K",则表示除了文件最后 K 字节的内容,显示剩余全部内容。
-v显示文件名;

        如不设置显示的具体行数,则默认显示 10 行的文本数据。 

2、基本用法

[root@localhost ~]# head anaconda-ks.cfg
[root@localhost ~]# head -n 20 anaconda-ks.cfg
[root@localhost ~]# head -20 anaconda-ks.cfg

 四、less命令:查看文件内容

        less 命令的作用和 more 十分类似,都用来浏览文本文件中的内容,不同之处在于,使用 more 命令浏览文件内容时,只能不断向后翻看,而使用 less 命令浏览,既可以向后翻看,也可以向前翻看。

             不仅如此,为了方面用户浏览文本内容,less 命令还提供了以下几个功能:

              (1)使用光标键可以在文本文件中前后(左后)滚屏;

              (2)用行号或百分比作为书签浏览文件;

              (3)提供更加友好的检索、高亮显示等操作;

              (4)兼容常用的字处理程序(如 Vim、Emacs)的键盘操作;

              (5)阅读到文件结束时,less 命令不会退出;

              (6)屏幕底部的信息提示更容易控制使用,而且提供了更多的信息。

1、基本格式

[root@localhost ~]# less [选项] 文件名
less 命令选项及含义
选项选项含义
-N显示每行的行号。
-S行过长时将超出部分舍弃。
-e当文件显示结束后,自动离开。
-g只标志最后搜索到的关键同。
-Q不使用警告音。
-i忽略搜索时的大小写。
-m显示类似 more 命令的百分比。
-f强迫打开特殊文件,比如外围设备代号、目录和二进制文件。
-s显示连续空行为一行。
-b <缓冲区大小>设置缓冲区的大小。
-o <文件名>将 less 输出的内容保存到指定文件中。
-x <数字>将【Tab】键显示为规定的数字空格。

          在使用 less 命令查看文件内容的过程中,和 more 命令一样,也会进入交互界面,因此需要读者掌握一些常用的交互指令

less 交互指令及功能
交互指令功能
/字符串向下搜索“字符串”的功能。
?字符串向上搜索“字符串”的功能。
n重复*前一个搜索(与 / 成 ? 有关)。
N反向重复前一个搜索(与 / 或 ? 有关)。
b向上移动一页。
d向下移动半页。
h 或 H显示帮助界面。
q 或 Q退出 less 命令。
y向上移动一行。
空格键向下移动一页。
回车键向下移动一行。
【PgDn】键向下移动一页。
【PgUp】键向上移动一页。
Ctrl+f向下移动一页。
Ctrl+b向上移动一页。
Ctrl+d向下移动一页。
Ctrl+u向上移动半页。
j向下移动一行。
k向上移动一行。
G移动至最后一行。
g移动到第一行。
ZZ退出 less 命令。
v使用配置的编辑器编辑当前文件。
[移动到本文档的上一个节点。
]移动到本文档的下一个节点。
p移动到同级的上一个节点。
u向上移动半页。

2、基本使用

[root@localhost ~]# less /boot/grub/grub.cfg
#
#DO NOT EDIT THIS FILE
#
#It is automatically generated by grub-mkconfig using templates from/etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; thenset have_grubenv=trueload_env
fi
set default="0"
if [ "$ {prev_saved_entry}" ]; thenset saved_entry="${prev_saved_entry}"save_env saved_entryset prev_saved_entry= save_env prev_saved_entryset boot_once=true
fifunction savedefault {if [ -z "${boot_once}" ]; then
:

        可以看到,less 在屏幕底部显示一个冒号(:),等待用户输入命令,比如说,用户想向下翻一页,可以按空格键;如果想向上翻一页,可以按 b 键。

五、tail命令:显示文件结尾的内容

tail 命令和 head 命令正好相反,它用来查看文件末尾的数据

1、基本格式

[root@localhost ~]# tail [选项] 文件名
tail 命令选项及含义
选项含义
-n K这里的 K 指的是行数,该选项表示输出最后 K 行,在此基础上,如果使用 -n +K,则表示从文件的第 K 行开始输出。
-c K这里的 K 指的是字节数,该选项表示输出文件最后 K 个字节的内容,在此基础上,使用 -c +K 则表示从文件第 K 个字节开始输出。
-f输出文件变化后新增加的数据。

2、tail的基本使用

[root@localhost ~]# tail -n 3 /etc/passwd
#查看 /etc/passwd 文件最后 3 行的数据内容。
[root@localhost ~]# tail -3 /etc/passwd
#除此之外,还可以采用如下这种形式,可以看到,
#使用 tail -n 3 /etc/passwd 命令和 tail -3 /etc/passwd 的效果是一样的。
[root@localhost ~]# tail -c 100 /etc/passwd
#查看 /etc/passwd 文件末尾 100 个字节的数据内容。
[root@localhost ~]#tail -f anaconda-ks.cfg
# 监听文件的新増内容。tail 命令有一种比较有趣的用法,
#可以使用 "-f" 选项来监听文件的新増内容

       这条命令会显示文件的最后 10 行内容,而且光标不会退出命令,每隔一秒会检查一下文件是否增加新的内容,如果增加就追加到原来的输出结果后面并显示。因此,这时如果向文件中追加一些数据(需要开启一个新终端):

[root@localhost ~]# echo 2222222222 >> anaconda-ks.cfg
[root@localhost ~]# echo 3333333333 >> anaconda-ks.cfg
#在新终端中通过echo命令向文件中追加数据

           那么,在原始的正在监听的终端中,会看到如下信息

[root@localhost ~]# tail -f anaconda-ks.cfg @server-platforin
@server-policy
pax
oddjob
sgpio
certmonger
pam_krb5
krb5-workstation
perl-DBD-SQLite
%end2222222222
33333333333
#在文件的结尾处监听到了新増数据

            如果想终止输出,按【Ctrl+c】键中断 tail 命令即可。

这篇关于Linux总结(十二):linux文件显示命令 cat,more,less,head,tail的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/942405

相关文章

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

JavaSE正则表达式用法总结大全

《JavaSE正则表达式用法总结大全》正则表达式就是由一些特定的字符组成,代表的是一个规则,:本文主要介绍JavaSE正则表达式用法的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录常用的正则表达式匹配符正则表China编程达式常用的类Pattern类Matcher类PatternSynta

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

在Linux终端中统计非二进制文件行数的实现方法

《在Linux终端中统计非二进制文件行数的实现方法》在Linux系统中,有时需要统计非二进制文件(如CSV、TXT文件)的行数,而不希望手动打开文件进行查看,例如,在处理大型日志文件、数据文件时,了解... 目录在linux终端中统计非二进制文件的行数技术背景实现步骤1. 使用wc命令2. 使用grep命令

postgresql数据库基本操作及命令详解

《postgresql数据库基本操作及命令详解》本文介绍了PostgreSQL数据库的基础操作,包括连接、创建、查看数据库,表的增删改查、索引管理、备份恢复及退出命令,适用于数据库管理和开发实践,感兴... 目录1. 连接 PostgreSQL 数据库2. 创建数据库3. 查看当前数据库4. 查看所有数据库

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

nginx启动命令和默认配置文件的使用

《nginx启动命令和默认配置文件的使用》:本文主要介绍nginx启动命令和默认配置文件的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录常见命令nginx.conf配置文件location匹配规则图片服务器总结常见命令# 默认配置文件启动./nginx