文档章节

Linux cat命令

郭周园
 郭周园
发布于 2017/08/23 10:39
字数 679
阅读 2
收藏 0

cat命令主要用来查看文件内容,创建文件,文件合并,追加文件内容等功能。

cat主要有三大功能:

1.一次显示整个文件。$ cat filename

2.从键盘创建一个文件。$ cat > filename  

   只能创建新文件,不能编辑已有文件.

3.将几个文件合并为一个文件: $cat file1 file2 > file

 

参数:

-n 或 --number 由 1 开始对所有输出的行数编号

-b 或 --number-nonblank 和 -n 相似,只不过对于空白行不编号

-s 或 --squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行

-v 或 --show-nonprinting

例:

把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里

cat -n textfile1 > textfile2

 

把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)之后将内容附加到 textfile3 里。

cat -b textfile1 textfile2 >> textfile3

 

test.txt文件扔进垃圾箱,赋空值test.txt

cat /dev/null > /etc/test.txt

 

A:查看文件内容主要用法:

1、cat f1.txt,查看f1.txt文件的内容。

2、cat -n f1.txt,查看f1.txt文件的内容,并且由1开始对所有输出行进行编号。

3、cat -b f1.txt,查看f1.txt文件的内容,用法与-n相似,只不过对于空白行不编号。

4、cat -s f1.txt,当遇到有连续两行或两行以上的空白行,就代换为一行的空白行。

5、cat -e f1.txt,在输出内容的每一行后面加一个$符号。

6、cat f1.txt f2.txt,同时显示f1.txt和f2.txt文件内容,注意文件名之间以空格分隔,而不是逗号。

7、cat -n f1.txt>f2.txt,对f1.txt文件中每一行加上行号后然后写入到f2.txt中,会覆盖原来的内容,文件不存在则创建它。

8、cat -n f1.txt>>f2.txt,对f1.txt文件中每一行加上行号后然后追加到f2.txt中去,不会覆盖原来的内容,文件不存在则创建它。 

 

B:创建文件以及写入文件内容的用法:

注意:创建文件的时候要设置文件结束标志,也就是<

 

C:追加文件内容的用法:

注意:与创建文件内容不同的是符号单边号>变成了双边号>>。

D:文件合并的用法

把文件f2.txt,f3.txt,f4.txt的文件内容写入到f1.txt中,如果f1.txt文件以前有内容,则先会清除它们然后再写入合并后的内容。

如果不想清除文件内容,则可以把单边号>变成了双边号>>,如下图所示:

附:

cat命令的全称:

concatenate files and print on the standard output

© 著作权归作者所有

共有 人打赏支持
郭周园
粉丝 0
博文 59
码字总数 9392
作品 0
成都
后端工程师

暂无文章

day92-20180918-英语流利阅读-待学习

健身最大的敌人不是懒惰,而是逞强 Daniel 2018-09-19 1.今日导读 还记得 2008 年北京奥运会运动员刘翔的退赛风波吗?那天几乎所有中国人都将视线聚焦在了鸟巢体育馆 110 米栏的项目上,迫不...

飞鱼说编程
6分钟前
1
0
70.shell的函数 数组 告警系统需求分析

20.16/20.17 shell中的函数 20.18 shell中的数组 20.19 告警系统需求分析 20.16/20.17 shell中的函数: ~1. 函数就是把一段代码整理到了一个小单元中,并给这个小单元起一个名字,当用到这段...

王鑫linux
今天
3
0
分布式框架spring-session实现session一致性使用问题

前言:项目中使用到spring-session来缓存用户信息,保证服务之间session一致性,但是获取session信息为什么不能再服务层获取? 一、spring-session实现session一致性方式 用户每一次请求都会...

WALK_MAN
今天
6
0
C++ yield()与sleep_for()

C++11 标准库提供了yield()和sleep_for()两个方法。 (1)std::this_thread::yield(): 线程调用该方法时,主动让出CPU,并且不参与CPU的本次调度,从而让其他线程有机会运行。在后续的调度周...

yepanl
今天
4
0
Java并发编程实战(chapter_3)(线程池ThreadPoolExecutor源码分析)

这个系列一直没再写,很多原因,中间经历了换工作,熟悉项目,熟悉新团队等等一系列的事情。并发课题对于Java来说是一个又重要又难的一大块,除非气定神闲、精力满满,否则我本身是不敢随便写...

心中的理想乡
今天
53
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部