一、介绍

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

linux 命令——文件管理 cat的更多相关文章

  1. 转 Linux命令-文件管理命令

    http://jingyan.baidu.com/article/9113f81bc1c7a72b3214c7d3.html Linux命令-文件管理命令 浏览:4118 | 更新:2012-11-1 ...

  2. Linux命令-文件管理(一)

    Linux命令-文件管理(一) 1.命令:cat cat命令用于把档案串连接后传到基本输出(萤幕或加 > fileName 到另一个档案) 使用权限:所有使用者 语法格式:cat [-AbeEn ...

  3. Linux命令-文件管理(四)

    Linux命令-文件管理 Linux slocate命令 Linux slocate命令查找文件或目录. slocate本身具有一个数据库,里面存放了系统中文件与目录的相关信息. 语法 slocate ...

  4. Linux命令-文件管理(二)

    Linux命令-文件管理(二) Linux gitview命令 Linux gitview命令用于观看文件的内容,它会同时显示十六进制和ASCII格式的字码. 语法:gitview [-bchilv] ...

  5. 每天一个linux命令:cat(10)

    cat cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用 注意:当文件较大时,文本在屏幕上迅速 ...

  6. linux命令之cat

    转自:http://www.cnblogs.com/peida/archive/2012/10/30/2746968.html cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容, ...

  7. 每天一个linux命令(10):cat

    1.命令简介 cat (concatenate,连接)命令将[文件]或标准输入组合输出到标准输出,如果没有指定文件,或者文件为"-",则从标准输入读取. 2.用法 cat [选项] ...

  8. 2018/03/07 每日一个Linux命令 之 cat

    每日一个Linux命令 2018-03-07 Linux 命令 cat cat [-参数] fileName 在之前的Linux使用中 cat 命令一直作为文本输出指令来使用,很少可以深入学习的该命令 ...

  9. 每天一个linux命令:cat 命令

    cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 1.命令格式: cat [选项] [文件] ...

随机推荐

  1. TCP/IP协议栈与数据包封装+TCP与UDP区别

    ISO制定的OSI参考模型的过于庞大.复杂招致了许多批评.与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用.如图2-1所示,是TCP/IP参考模型和OSI参考模型的对比示意图. T ...

  2. APT攻击

    http://netsecurity.51cto.com/art/201211/363040.htm

  3. 01 - 编译链接第一个wxWidgets3.0例子

    1. preprocessor #define __WXMSW__#define WXUSINGDLL 2. vc10中设置Include dir, lib dir, dll path VC++平台编 ...

  4. http://www.oschina.net/translate/elasticsearch-getting-started?cmp

    http://www.oschina.net/translate/elasticsearch-getting-started?cmp

  5. lintcode:Remove Nth Node From End of Lis 删除链表中倒数第n个节点

    题目: 删除链表中倒数第n个节点 给定一个链表,删除链表中倒数第n个节点,返回链表的头节点.  样例 给出链表1->2->3->4->5->null和 n = 2. 删除 ...

  6. TCL语言笔记:TCL中的数组

    一.介绍 Tcl 中的数组和其他高级语言的数组有些不同:Tcl 数组元素的索引,或称键值,可以是任意的字符串,而且其本身没有所谓多维数组的概念.数组的存取速度要比列表有优势,数组在内部使用散列表来存储 ...

  7. NewPascal(也许只是对FreePascal的一种封装)

    NewPascal is a breath of fresh air and long tradition! NewPascal offers a ready-to-be-used and up-to ...

  8. asp.net(C#)读取word 文档的方法

    第一种方法 Response.ClearContent(); Response.ClearHeaders(); Response.ContentType = "Application/msw ...

  9. java工具类–自动将数据库表生成javabean

    最近和数据库的表打交道挺多的,因为暂时做的是接口活. 在这过程中发现要把表转换成对应的javabean类型,字段少的表还行,如果不小心碰到几十个字段的他妈的写起来就有点麻烦了,万一碰到几百个的呢,那不 ...

  10. c# 使用 静态类+xml序列化 保存配置文件

    namespace TVCorrectionDataProcess{    [XmlRoot(ElementName = "Config")]    public class Co ...