Linux文本文件——管理文本的命令

摘要:本文主要学习了在Linux中管理文本的命令。

cat命令

cat命令用来显示文本文件的内容,也可以把几个文件内容附加到另一个文件中,即连接合并文件,是Concatenate的缩写。

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

基本语法

 cat [选项] 文件名
cat 文件1 文件2 > 文件3

第一个命令用来显示文本内容,第二个命令用来合并文件。

选项说明

 -A:相当于-vET选项的整合,用于列出所有隐藏符号。
-E:列出每行结尾的回车符$。
-n:对输出的所有行进行编号。
-b:同-n不同,此选项表示只对非空行进行编号。
-T:把Tab键^I显示出来。
-v:列出特殊字符。
-s:当遇到有连续2行以上的空白行时,就替换为1行的空白行。

使用举例

 [root@localhost home]# cat hello
hello
[root@localhost home]# cat -A hello
hello$
[root@localhost home]#

more命令

more命令用来分页显示文本文件的内容,使用者可以逐页阅读文件中内容。

基本语法

 more [选项] 文件名

选项说明

 -f:计算行数时,以实际的行数,而不是自动换行过后的行数。
-p:不以卷动的方式显示每一页,而是先清除屏幕后再显示内容。
-c:跟-p选项相似,不同的是先显示内容再清除屏幕。
-s:当遇到有连续两行以上的空白行时,就替换为一行的空白行。
-行数:指定每屏显示的行数。
+行数:从第指定行数开始显示文件内容。

交互命令

 [Space]:向下翻一页。
[Enter]:向下翻一行。
/word:向下搜索word字符串。
:f:显示文件名以及当前的行数。
q:关闭more。

使用举例

 hello1
hello2
hello3
hello4
hello5
hello6
hello7
hello8
hello9
hello1
hello2
--More--(%)

less命令

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

基本语法

 less [选项] 文件名

选项说明

 -N:显示每行的行号。
-S:行过长时将超出部分舍弃。
-e:当文件显示结束后,自动离开。
-g:只标志最后搜索到的关键同。
-i:忽略搜索时的大小写。
-m:显示类似more命令的百分比。
-f:强迫打开特殊文件,比如外围设备代号、目录和二进制文件。
-s:显示连续空行为一行。
-o 文件名:将输出的内容保存到指定文件中。
-b 大小:设置缓冲区的大小。
-x 空格个数:将Tab键显示为指定的空格个数。

交互命令

 /word:向下搜索word字符串。
?word:向上搜索word字符串。
n:重复前一个搜索。
N:反向重复前一个搜索。
b:向上移动一页。
d:向下移动半页。
h或H:显示帮助界面。
q或Q:退出less命令。
y:向上移动一行。
[Space]:向下移动一页。
[Enter]:向下移动一行。
[PgDn]:向下移动一页。
[PgUp]:向上移动一页。
Ctrlf:向下移动一页。
Ctrlb:向上移动一页。
Ctrld:向下移动一页。
Ctrlu:向上移动半页。
j:向下移动一行。
k:向上移动一行。
G:移动至最后一行。
g:移动到第一行。
ZZ:退出less命令。
v:使用配置的编辑器编辑当前文件。
[:移动到本文档的上一个节点。
]:移动到本文档的下一个节点。
p:移动到同级的上一个节点。
u:向上移动半页。

使用举例

 hello1
hello2
hello3
hello4
hello5
hello6
hello7
hello8
hello9
hello1
hello2
:

head命令

head命令可以显示指定文件前若干行的文件内容。

基本语法

 head [选项] 文件名

选项说明

 -n 行数:该选项用来显示文件前几行的内容,如果使用“-行数”作为参数,则表示除了文件最后几行外,显示前面的内容。
-c 字节数:该选项用来显示文件前几个字节的内容,如果使用“-字节数”,则表示除了文件最后几个字节的内容,显示前面的内容。
-v:显示文件名。

使用举例

 [root@localhost home]# head -n  hello
hello1
hello2
hello3
hello4
hello5
[root@localhost home]#

tail命令

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

基本语法

 tail [选项] 文件名

选项说明

 -n 行数:该选项用来显示文件最后几行的内容,如果使用“-行数”作为参数,则表示从文件第几行开始输出。
-c 字节数:该选项用来显示文件最后几个字节的内容,如果使用“-字节数”,则表示从文件第几字节开始输出。
-f:输出文件变化后新增加的数据。

使用举例

 [root@localhost home]# tail -f -n  hello
hello7
hello8
hello9
hello1
hello2

Linux文本文件——管理文本的命令的更多相关文章

  1. Linux学习之文本处理命令(五)

    ---恢复内容开始--- Linux 系统之文本处理命令 (一)基于关键字搜索 (二)基于列处理文本 (三)文本统计 (四)文本排序 (五)删除重复行 (六)文本比较 (七)处理文本内容 (八)搜索替 ...

  2. Linux后台进程管理的一些命令小结

    Linux后台进程管理的一些命令:fg.bg.jobs.&.ctrl + z命令,供大家学习参考   一. &加在一个命令的最后,可以把这个命令放到后台执行 ,如gftp &, ...

  3. linux学习-常用文本处理命令

    1.文本处理命令 (1) tr 转换或删除字符 tr [OPTION]...SET1 SET2 选项: -c 取SET1字符串的补集 -d 删除属于SET1中的字符 -s 把连续重复出现的字符以单独一 ...

  4. linux下的文本处理命令sed&awk&grep

    Sedsed 是个精简的.非交互式的编辑器.他能执行和编辑vi和emacs相同的编辑任务.sed编辑器不提供交互使用方式:只能在命令行输入编辑命令.指定文件名,然后在屏幕上察看输出.sed编辑器没有破 ...

  5. Linux系列教程(十一)——Linux软件包管理之RPM命令

    前面我们介绍了Linux系统的常用命令介绍和文本编辑器vim命令的介绍.那么从这篇博客开始,我们会正式的讲解Linux的系统管理,首先要讲的是Linux的软件包管理. 1.Linux软件包分类 一.源 ...

  6. Linux软件包管理之RPM命令

    目录 1.Linux软件包分类 一.源码包 二.二进制包 2.rpm 包命名规则 3.rpm包安装 4.rpm包升级 5.rpm包卸载 6.查询rpm包是否安装 7.查询软件包的详细信息 8.查询软件 ...

  7. 用于 ‘Suse‘ Linux 包管理的 Zypper 命令大全

    SUSE( Software and System Entwicklung,即软件和系统开发.其中‘entwicklung‘是德语,意为开发)Linux 是由 Novell 公司在 Linux 内核基 ...

  8. linux 打印机管理输出等命令

    lp 打印文件, 对于打印文件的命令,伯克利实现版本是 lpr,而 System V 实现版本是 lplpadmin 打印机管理,添加.删除等打印机lpstat 查看打印机状态lpq 检查打印队列lp ...

  9. Linux 目录管理的相关命令

    mkdir,rmdir 创建目录mkdir -p:当上级目录不存在时,自动创建上级目录 -v:显示创建过程 $ mkdir -pv /tmp/x/y/z/ mkdir: created directo ...

随机推荐

  1. 仓库管理移动应用解决方案——C#开发的移动应用开源解决方案

    产品简介 SmoWMS是一款仓库管理移动解决方案,通过Smobiler平台开发,包含了仓库管理中基础的入库.出库.订单管理.调拨.盘点.报表等功能.支持扫码条码扫描.RFID扫描等仓库中常见的场景. ...

  2. HOW TO: Setting up Encrypted Communications Channels in Oracle Databas

    access_timeSeptember 22, 2015 person_outlineMartin Rakhmanov share In this article, I will explain h ...

  3. python中的随机模块random

    random模块是 python 中为随机数所使用的模块 ```import random # 随机生成0-1范围内的随机浮点数i = random.random()print(i) # 随机生成范围 ...

  4. Django 的ORM 表间操作

    Django之ORM表间操作   之前完成了简单的数据库数据增加操作.这次学习更多的表间操作. 单表操作 增加 方式一 b = Book(title="Python基础", pub ...

  5. Python序列类型方法

    列表的常用方法 append.insert.extend.pop.remove 元组的两个方法count.index 字符串的常用方法及转义count.find.index.replace.split ...

  6. C学习笔记(3)---作用域,数组, (少量指针入门)

    1. 作用域(scope):任何一种编程中,作用域是程序中定义的变量所存在的区域,超过该区域变量就不能被访问.C 语言中有三个地方可以声明变量. a. 在函数或块内部的局部变量 - 在某个函数或块的内 ...

  7. 在C++工程上添加CUDA编译环境

    1.直接在新建工程的时候选择CUDA,这样的工程既能编译C++也能编译CU 2.在已有的C++工程上添加CUDA编译环境 右键工程-->生成依赖项-->生成自定义-->勾选CUDA ...

  8. python 给多人发送邮件,且将结果添加为附件

    import unittest,HTMLTestRunnerimport osdef runa(): path=os.getcwd() print(path) a=unittest.defaultTe ...

  9. Appium左右、上下滑动(Java)

    网上很多文章都说用swipe来左右滑动,你把代码一贴,结果报错,看半天,原来是java-client中swipe早就被废除了!!!下面介绍一种Java写法来左右上下滑动: 首先,创建一个Swipe类 ...

  10. 5、zabbix数据库分离

    环境: zabbix端:zabbix3.4(192.168.80.66) 数据库端:mysql5.7(192.168.80.88) 被监控端:web01(192.168.80.240) 为什么要将数据 ...