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. JavaWeb之Fliter & Listener

    Fliter & Listener Listener 监听器 作用 监听某一事件的发生.状态的改变. 监听器内部实现机制 接口回调 接口回调 A在执行循环,当循环到5的时候, 通知B. 事先先 ...

  2. 进度更新---Responsive Web Design Certification (300 hours)

    进度更新---Responsive Web Design Certification (300 hours) 已经完成: basic html and html5 basic css applied ...

  3. 更改docker默认网段

    #本文档旨在说明创建docker时注意的事项:我们在局域网中使用Docker,最常遇到的一个困惑,就是有时候跨网段结果出现网络不通.原因是因为Docker默认生成的网关和我们的局域网网段有时候是冲突的 ...

  4. 使用Socket下载图片

    Socket下载一张图片 Socket下载一页图片 Socket下载一张图片 在百度搜索头像,挑一张 复制图片的路径打开,并保存这个url 把这个url的域名和路径分开 首先导入socket模块 第一 ...

  5. Ubuntu18.04连接蓝牙耳机

    使用的耳机是索尼WI-SP500,打开设置,找到Bluetooth,直接连接(WI-SP500在连接第二台设备时,需要长按开机键7秒才行), 保证Output选择需要连接的耳机,然后确保Profile ...

  6. idea插件(mybatis框架下mapper接口快速跳转对应xml文件)亲测好用!

    我相信目前在绝大部分公司里,主要使用的框架是S(spring)S(spring MVC)M(mybatis),其中mybatis总体架构是编写mapper接口,框架扫描其对应的mapper.xml文件 ...

  7. C++ 模板特化、偏特化测试程序

    #include <iostream> // 偏特化的模板不会自己添加构造函数 ctor 和 析构函数 dtor #if 1 // P1 template <typename T1, ...

  8. office 2016 下载链接

    [安装环境]:win7/win8/win10 [64位下载] 百度网盘链接:pan.baidu.com/s/1AkiLQtjhayGdx6mw1DQyqw  提取码:qyx9

  9. 10.12 csp-s模拟测试70 木板+打扫卫生+骆驼

    T1 木板 求$[\sqrt{n},n)$间有多少个数的平方是n的倍数 通过打表可以发现(我没带脑子我看不出来),符合条件的数构成一个等差数列,公差为首项 而首项就是将n质因数分解后每个质因数出现次数 ...

  10. Paper | UNet++: A Nested U-Net Architecture for Medical Image Segmentation

    目录 1. 故事 2. UNet++ 3. 实验 3.1 设置 作者的解读,讲得非常好非常推荐:https://zhuanlan.zhihu.com/p/44958351 这篇文章提出的嵌套U-Net ...