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 qq2. 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 编辑器 ... 
随机推荐
- Kotlin入门学习笔记
			前言 本文适合人群 有一定的java基础 变量与方法 变量声明及赋值 var 变量名: 变量类型 val 变量名: 变量类型 这里,var表示可以改变的变量,val则是不可改变的变量(第一个赋值之后, ... 
- bootstrap思考一
			bootstrap是一种热门的Web前端流行框架,如果要兼容PC端.手机端和响应式布局,那他一定是我的首选.bootstrap内容很多,功能强大,其中最好入门也是很重要的就是他的栅格系统.他有四个典型 ... 
- vue 中promise 异步请求数据
			export function getTypes(type) { return listDictItems({ code: type }).then((res) => { if (res.cod ... 
- vue 音乐App QQ音乐搜索列表最新接口跨域设置
			在 webpack.dev.config.js中 'use strict' const utils = require('./utils') const webpack = require('webp ... 
- eclipse配置freemarker,*.ftl文件
			亲测,提供2种方式,效果都不错: ----------------------------------------- 1.直接下载相应的插件.只需要下载FreeMarker的识别Jar包就可以:888 ... 
- Lyndon Word学习笔记
			Lyndon Word 定义:对于字符串\(s\),若\(s\)的最小后缀为其本身,那么称\(s\)为Lyndon串 等价性:\(s\)为Lyndon串等价于\(s\)本身是其循环移位中最小的一个 性 ... 
- sublime实现背景透明化
			预览 老司机们就不要吐槽背景图了 实现方法 首先下载插件,直接打包下载zip即可 地址:https://github.com/vhanla/SublimeTextTrans 下载完成后解压到packa ... 
- NET Core应用中使用缓存
			NET Core应用中使用缓存 .NET Core针对缓存提供了很好的支持 ,我们不仅可以选择将数据缓存在应用进程自身的内存中,还可以采用分布式的形式将缓存数据存储在一个“中心数据库”中.对于分布式缓 ... 
- MVP模式, 开源库mosby的使用及代码分析
			Android中的构架模式一直是一个很hot的topic, 近年来Architecture components推出之后, MVVM异军突起, 风头正在逐渐盖过之前的MVP. 其实我觉得MVP还是有好 ... 
- MySQL 修改账号的IP限制条件
			今天遇到一个需求:修改MySQL用户的权限,需要限制特定IP地址才能访问,第一次遇到这类需求,结果在测试过程,使用更新系统权限报发现出现了一些问题, 具体演示如下. 下面测试环境为MySQL 5.6. ... 
