Shell命令-文件及内容处理之cat、tac
文件及内容处理 - cat、tac
1. cat:显示文件内容
cat命令的功能说明
cat命令用于连接多个文件并且打印到屏幕输出或重定向到指定文件中
cat命令的语法格式
cat[OPTION]... [FILE]...
cat[-AbeEnstTuv] [--help] [--version] fileName
file命令的选项说明
cat参数很多,但用到的就几个。表1为cat命令的参数及说明:
表1:
cat命令的参数及说明
| 参数选项 | 解释说明 |
|---|---|
| -n 或 --number | 由 1 开始对所有输出的行数编号。 |
| -b 或 --number-nonblank | 和 -n 相似,只不过对于空白行不编号。 |
| -s 或 --squeeze-blank | 当遇到有连续两行以上的空白行,就代换为一行的空白行。 |
| -v 或 --show-nonprinting | 使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外。 |
| -E 或 --show-ends | 在每行结束处显示 $。 |
| -T 或 --show-tabs | 将 TAB 字符显示为 ^I。 |
| -A, --show-all | 等价于 -vET。 |
| -e | 等价于"-vE"选项; |
| -t | 等价于"-vT"选项; |
cat命令的实践操作
范例1: 执行
cat命令的完整命令生成oldboy.txt文件内容,并且不带参数查看内容
--------------------------------------------------------------
==>命令如下<==
--------------------------------------------------------------
cat >oldboy.txt <<EOF
I Love Linux
Me too
good
EOF
--------------------------------------------------------------
==>演示如下<==
--------------------------------------------------------------
[root@oldboyedu /test]# ls
[root@oldboyedu /test]# cat >oldboy.txt <<EOF
> I Love Linux
>
> Me too
>good
> EOF
[root@oldboyedu /test]# ls
oldboy.txt
--------------------------------------------------------------
==>不带参数查看内容<==
--------------------------------------------------------------
[root@oldboyedu /test]# cat oldboy.txt
I Love Linux
Me too
good
范例2: 执行cat命令,分别带 -n及-b 选项,并对比区别
--------------------------------------------------------------
==>-n打印行号,包括空行<==
--------------------------------------------------------------
[root@oldboyedu /test]# cat -n oldboy.txt
1 I Love Linux
2
3 Me too
4
5 good
--------------------------------------------------------------
==>-b也打印行号,但不包括空行<==
--------------------------------------------------------------
[root@oldboyedu /test]# cat -b oldboy.txt
1 I Love Linux
2 Me too
3 good
范例4: 执行
cat命令,带-E参数
[root@oldboyedu /test]# cat -E oldboy.txt
I Love Linux$
$
Me too$
$
good$
--------------------------------------------------------------
==>结束标识符$,即使是空行也要显示$<==
--------------------------------------------------------------
[root@oldboyedu /test]# echo >oldboy1.txt
[root@oldboyedu /test]# cat -E oldboy1.txt
$
[root@oldboyedu /test]# ll oldboy1.txt
-rw-r--r-- 1 root root 1 4月 14 15:18 oldboy1.txt
范例5: 执行
cat命令,带-s参数
--------------------------------------------------------------
==>追加几行文本<==
--------------------------------------------------------------
[root@oldboyedu /test]# cat >>oldboy.txt <<EOF
>
>
> if you like my blog
>
>
> call me qq
> EOF
--------------------------------------------------------------
==>结果如下<==
--------------------------------------------------------------
[root@oldboyedu /test]# cat oldboy.txt
I Love Linux
Me too
good
if you like my blog
call me qq
--------------------------------------------------------------
==>-s效果如下<==
--------------------------------------------------------------
[root@oldboyedu /test]# cat -s oldboy.txt
I Love Linux
Me too
good
if you like my blog
call me qq
2. tac:反向显示文件内容
tac命令的功能说明
tac是cat的反向拼写,因此命令的功能为反向显示文件内容
cat命令的语法格式
tac[OPTION]... [FILE]...
tac[-AbeEnstTuv] [--help] [--version] fileName
tac命令的选项说明
tac用的不多,在此简单了解一下即可
范例1: 倒序查看文本内容
--------------------------------------------------------------
==>文件里写文本内容<==
--------------------------------------------------------------
[root@oldboyedu /test]# echo "1234567" >> oldboy3.txt
[root@oldboyedu /test]# echo "1234567" >> oldboy3.txt
[root@oldboyedu /test]# echo "1111111" >> oldboy3.txt
[root@oldboyedu /test]# echo "2222222" >> oldboy3.txt
[root@oldboyedu /test]# echo "3333333" >> oldboy3.txt
--------------------------------------------------------------
==>正常查看<==
--------------------------------------------------------------
[root@oldboyedu /test]# cat oldboy3.txt
1234567
1234567
1111111
2222222
3333333
--------------------------------------------------------------
==>反向查找<==
--------------------------------------------------------------
[root@oldboyedu /test]# tac oldboy3.txt
3333333
2222222
1111111
1234567
1234567
[root@oldboyedu /test]#
今天就写到这里,有什么疑问或出现什么错误,随时欢迎大神们发表评论指点迷津
Shell命令-文件及内容处理之cat、tac的更多相关文章
- Shell命令-文件及内容处理之sort、uniq
文件及内容处理 - sort.unip 1. sort:对文件的文本内容排序 sort命令的功能说明 sort 命令用于将文本文件内容加以排序.sort 可针对文本文件的内容,以行为单位来排序. so ...
- Shell命令-文件及内容处理之more、less
文件及内容处理 - more.less 1. more:分页显示文件内容 more命令的功能说明 more 命令类似 cat,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白 ...
- Shell命令-文件及内容处理之head、tail
文件及内容处理 - head.tail 1. head:显示文件内容头部 head命令的功能说明 head 命令用于显示文件头部内容,默认执行 head 命令会输出文件开头的 10 行. head命令 ...
- Shell命令-文件及内容处理之cut、rev
文件及内容处理 - cut.rev 1. cut:切割文件内容 cut命令的功能说明 cut 命令用于显示每行从开头算起num1 到 num2 的文字. cut命令的语法格式 cut [OPTION] ...
- Shell命令-文件及内容处理之diff、vimdiff
文件及内容处理 - diff.vimdiff 1. diff:比较两个文件区别 diff命令的功能说明 diff命令用比较文件的差异.diff以逐行的方式,比较文本文件的异同处.如果指定要比较目录,则 ...
- Shell命令-文件及内容处理之wc,tr
文件及内容处理 - wc.tr 1. wc:统计文件的行数.单词数或字节数 wc命令的功能说明 wc 命令用于计算字数.利用 wc 指令我们可以计算文件的字节数,字数,或是列数,若不指定文件名称,或是 ...
- Shell命令-文件及内容处理之grep(egrep)、join
文件及内容处理 - grep(egrep).join 1. grep(egrep):文本过滤工具 grep(egrep)命令的功能说明 grep命令是Linux系统中最重要的命令之一,其功能是从文本文 ...
- Shell命令-文件及内容处理之split、paste
文件及内容处理 - split.paste 1. split:分割文件为不同的小片段 split命令的功能说明 split 命令用于将一个文件分割成数个.该指令将大文件分割成较小的文件,在默认情况下将 ...
- Shell命令-文件及内容处理之vi、vim
文件及内容处理 - vi.vim 1.Linux vi/vim 所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在. 但是目前我们使用比较多的是 vim 编辑器 ...
随机推荐
- 6-Redis 的持久化之 AOF
2017-01-01 16:42:13 该系列文章链接NoSQL 数据库简介Redis的安装及及一些杂项基础知识Redis 的常用五大数据类型(key,string,hash,list,set,zse ...
- Fragment与Activity的接口回调
这里说一个官方推荐的写法: private OnFragmentInteractionListener mListener; @Override public void onAttach(Contex ...
- MAC MAMP 中安装配置使用 ThinkPHP
MAMP PRO 是Mac OS X 平台上经典的本地环境应用 MAMP 的专业版.专门为专业的Web开发人员和程序员轻松地安装和管理自己的开发环境. MAMP这几个首字母代表Mac OS X系统上的 ...
- 以太坊智能合约 Solidity 的常用数据类型介绍
目录 目录 1.数组 1.1.对数组的增删改查操作. 2.String.Bytes.Mapping的使用 3.Enums 和 Structs 的简单应用 4.Ether 单位和 Time 单位 5.A ...
- MySQL索引设计需要考虑哪些因素?
索引小知识 篇幅有限,索引的基本知识我们就不赘述了,在此,我们尝试说明其中的一个小点-----B+树与B树的区别到底是什么. InnoDB是使用B+树来实现其索引功能的.在B+树中,内节点(非叶子节点 ...
- 爬虫之scrapy--基本操作
参考博客 :https://www.cnblogs.com/wupeiqi/p/6229292.html Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架. 其可以应用在数据挖掘, ...
- c/c++ 继承与多态 由子类向父类的转换规则
问题1:子类B可以有3种方式(public, protected, private)继承父类A,用哪种方式继承,用户代码才能把子类B的对象转换成父类A的对象呢? 只用当子类B以public方式继承父类 ...
- iOS开发者学习Flutter
Flutter for iOS 开发者 本文档适用那些希望将现有 iOS 经验应用于 Flutter 的开发者.如果你拥有 iOS 开发基础,那么你可以使用这篇文档开始学习 Flutter 的开发. ...
- MVC Remote 服务器验证
用此验证必须在Controller中编写返回值为JsonResult的Action public JsonResult CheckUserName(string UserName) { EFHelpe ...
- windows下安装mysql数据库修改端口号
Window版本 卸载原本的mysql sc delete MySQL //删除mysql 1.下载 1 2 3 MySQL https://dev.mysql.com/downloads/ins ...