linux 命令——文件管理 cat

一、介绍

cat 是一个文本文件查看和连接工具。从第一个字节开始正向查看文件的内容。

主要有三大功能:

1.一次显示整个文件。$ cat   filename ~,y6;e
2.从键盘创建一个文件。$ cat  >  filename  0#!7
只能创建新文件,不能编辑已有文件. :z)
3.将几个文件合并为一个文件。 $cat   file1   file2  > file"

 cat语法结构

de>cat [选项] [文件]...de>
选项
-A, --show-all 等价于 -vET
-b, --number-nonblank 对非空输出行编号,行号从1开始
-e 等价于 -vE
-E, --show-ends 在每行结束处显示 $
-n, --number 对输出的所有行编号,cat -n filename与nl filename相同。
-s, --squeeze-blank 不输出多行空行
-t 与 -vT 等价
-T, --show-tabs 将跳 字符显示为 ^I
-u (被忽略)
-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
--help 显示此帮助信息并离开

二、实例

1.查看文件内容实例

#cat /proc/cpuinfo 显示CPU info信息

#cat /proc/interrupts 显示中断

#cat /proc/meminfo 校验内存使用

#cat /proc/swaps 显示哪些swap被使用

#cat /proc/version 显示内核版本

#cat 可以同时显示多个文件的内容,比如我们可以在一个cat命令上同时显示两个文件的内容,两个文件之间不存在空行;

#cat /etc/fstab /etc/profilede
#cat 对于内容极大的文件来说,可以通过管道|传送到more 工具,然后一页一页的查看;
# cat /etc/fstab /etc/profile | more

2.创建、连接文件功能实例

2.1 cat 有创建文件的功能,创建文件后,要以EOF或STOP结束;

在使用 "cat > filename.txt" 创建文件时,可采用下面步骤:

1)键入cat > filename.txt 后回车

2)录入文本内容;

3)键入回车;

4)在键盘上按下Ctrl+D (或者键入Ctrl+Z、Ctrl+C等)。

文本被存盘,shell提示符重新出现

或使用“cat >filename.txt <<EOF”创建文件时,可采用下面步骤:

1)键入cat >filename.txt <<EOF 后回车

2)>hello

3)>world

4)>linux

5)>EOF

文本被存盘。

cat 一直从标准的输入读,直到你设定的分界符时就停止读,把读的内容输出到指定的文件或者终端,在此处EOF也可以换成其他的字段,如OVER

2.2 cat 还有向已存在的文件追加内容的功能;

#cat >>filename.txt

2.3 cat 连接多个文件的内容并且输出到一个新文件中;

比如已有文件a1,a2,a3将这三个文件连接(三个文件内容)起来输出到b1中。

#cat a1 a2 a3 >b1

2.4 cat 把一个或多个已存在的文件内容,追加到一个已存在的文件中。

比如已有文件a1,a2将这追加到已存在的文件b1中。

#cat a1 a2  >>b1

三、使用实例

实例一:把 log2012.log 的文件内容加上行号后输入 log2013.log 这个文件里
命令:
cat -n log2012.log log2013.log

实例二:把 log2012.log 和 log2013.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里。
命令:
cat -b log2012.log log2013.log log.log

实例三:把 log2012.log 的文件内容加上行号后输入 log.log 这个文件里
命令:

cat -n log2012.log > log.log

实例四:使用here doc来生成文件
输出:
[root@localhost test]# cat >log1.txt <<EOF
> hello
> pwd=$(pwd)
> EOF
[root@localhost test]# cat log1.txt
hello
pwd=/test

说明:
注意粗体部分,here doc可以进行字符串替换。

四、tac 命令

tac 命令反向显示。

tac file1 (反向列示),从文件的最后一行反向查看一个文件的内容。

[root@localhost test]# cat log2.txt
12
1213
over
[root@localhost test]# tac log2.txt
over
1213
12

说明:

tac 是将 cat 反写过来,所以他的功能就跟 cat 相反, cat 是由第一行到最后一行连续显示在萤幕上,而 tac 则是由最后一行到第一行反向在萤幕上显示出来!

 

参考:http://www.cnblogs.com/peida/archive/2012/10/30/2746968.html

 

原文地址:https://www.cnblogs.com/kongzhongqijing/p/3480461.html