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

  1.命令格式:

  cat [选项] [文件]...

  2.命令功能:

  兄弟连Linux培训

小编,来讲一下cat主要的三大功能:

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

  2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.

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

  3.命令参数:

  -A, --show-all 等价于 -vET

  -b, --number-nonblank 对非空输出行编号

  -e 等价于 -vE

  -E, --show-ends 在每行结束处显示 $

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

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

  -t 与 -vT 等价

  -T, --show-tabs 将跳格字符显示为 ^I

  -u (被忽略)

  -v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

  4.使用实例:

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

  命令:

  cat -n log2012.loglog2013.log

  输出:

  复制代码

  代码如下:

  [root@localhost test]# catlog2012.log

  2012-01

  2012-02</p><p>======[root@localhost test]# cat log2013.log

  2013-01

  2013-02</p><p>2013-03

  ======[root@localhosttest]# cat -n log2012.log log2013.log

  1 2012-01

  2 2012-02

  3

  4

  5 ======

  6 2013-01

  7 2013-02

  8

  9

  10 2013-03

  11 ======[root@localhosttest]#

  说明:

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

  命令:

  cat -b log2012.loglog2013.log log.log

  输出:

  复制代码

  代码如下:

  [root@localhost test]# cat-b log2012.log log2013.log log.log

  1 2012-01

  2 2012-02

  3 ======

  4 2013-01

  5 2013-02

  6 2013-03

  7 ======[root@localhosttest]#

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

  命令:

  输出:

  复制代码

  代码如下:

  [root@localhost test]# catlog.log

  [root@localhost test]# cat-n log2012.log > log.log

  [root@localhost test]# cat-n log.log

  1 2012-01

  2 2012-02

  3

  4

  5 ======

  [root@localhost test]#

  实例四:使用here doc来生成文件

  输出:

  复制代码

  代码如下:

  [root@localhost test]# cat>log.txt <<EOF

  > Hello

  > World

  > Linux

  > PWD=$(pwd)

  > EOF

  [root@localhost test]# ls-l log.txt

  -rw-r--r-- 1 root root 3710-28 17:07 log.txt

  [root@localhost test]# catlog.txt

  Hello

  World

  Linux

  PWD=/opt/soft/test

  [root@localhost test]#

  说明:

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

  备注:

  tac (反向列示)

  命令:

  tac log.txt

  输出:

  复制代码

  代码如下:

  [root@localhost test]# taclog.txt

  PWD=/opt/soft/test

  Linux

  World

  Hello

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

Linux基础教程 linux下cat 命令使用详解的更多相关文章

  1. linux下sort命令使用详解---linux将文本文件内容加以排序命令

    转载自:http://www.cnblogs.com/hitwtx/archive/2011/12/03/2274592.html linux下sort命令使用详解---linux将文本文件内容加以排 ...

  2. Linux下find命令用法详解

    Linux下find命令用法详解   学神VIP烟火 学神IT教育:XueGod-IT   最负责任的线上直播教育平台   本文作者为VIP学员 烟火   第一部分:根据文件名查找   1.在当前目录 ...

  3. linux基础之LSB定义的常用目录详解

    Linux基础之LSB定义的基本目录详解 1.LSB中FHS(Filesystem Hierarchy Standard)定义的一些文件 /boot:主要是存放引导文件的目录,比如内核文件(vmlin ...

  4. Linux 基础教程 27-ss和ip命令

    什么是netstat     在Linux系统中输入 man netstat,显示的结果如下所示: netstat - Print network connections, routing table ...

  5. Linux基础教程 linux系统中的批量删除文件与空文件删除的命令介绍

    linux下面删除文件或者目录命令rm(remove): 兄弟连Linux培训 功能说明:删除文件或目录. 语 法:rm[-dfirv][--help][--version][文件或目录...] 补充 ...

  6. LINUX下分区命令Parted详解

    通常划分分区工具我们用的比较多是fdisk命令,但是现在由于磁盘越来越廉价,而且磁盘空间越来越大.而fdisk工具他对分区是有大小限制的,它只能划分小于2T的磁盘.现在的磁盘空间已经远远大于2T,有两 ...

  7. python基础教程笔记—画幅好画(详解)

    今天写一下基础教程里面的第二个项目,主要使用python来做一个pdf的图,比较简单. 首先我们需要安装用到的模块pip install reportlab即可. 书上是用urlopen从往上下了一个 ...

  8. Linux基础教程 linux下使用find命令根据系统时间查找文件用法

      LinuxFind 兄弟连Linux培训 总结这些时间戳包括 复制代码代码如下: mtime 文件内容上次修改时间 atime 文件被读取或访问的时间 ctime 文件状态变化时间 mtime 和 ...

  9. Linux基础教程 linux中使用find命令搜索文件常用方法记录

    find是linux非常强大的搜索命令,通过man find查看find手册,可以发现find的说明一屏接一屏,估计要看完也得花不少时间.兄弟连Linux培训 小编总结了下,整理出find常用的使用方 ...

随机推荐

  1. noi.ac-CSP模拟Day5T1 组【二分图最大匹配】

    虽然是T3,但是想通了之后还是不难的. 数据规模也不大. 可以考虑先枚举一个班长,根据题意,和班长连边的学生就可以不用管,没有和班长连边的学生就要去找一个和班长连边的学生组队,如果所有没有和班长连边的 ...

  2. 第八周总结and实验

    1.实验目的 理解异常的基本概念:掌握异常处理方法及熟悉常见异常的捕获方法. 2.实验要求 练习捕获异常.声明异常.抛出异常的方法.熟悉try和catch子句的使用.掌握自定义异常类的方法. 3.实验 ...

  3. Elasticsearch-搜索并获取数据

    Elasticsearch-搜索并获取数据 在group中搜索elasticsearch curl -XGET "localhost:9200/get-together/group/_sea ...

  4. 【Linux 网络编程】端口

    (1)众所周知的端口:0~1023,这些端口由IANA分配和控制它们紧密绑定用于一些服务.常用这些端口的通讯    明确表明了某些协议.例如:21端口为ftp服务端口. (2)注册端口:1024~49 ...

  5. 【转帖】Spring Boot 为什么这么火?

    Spring Boot 为什么这么火? 2019/06/03 http://www.ityouknow.com/springboot/2019/06/03/spring-boot-hot.html 没 ...

  6. laravel修改用户模块的密码验证

    做项目的时候,用户认证几乎是必不可少的,如果我们的项目由于一些原因不得不使用 users 之外的用户表进行认证,那么就需要多做一点工作来完成这个功能. 现在假设我们只需要修改登录用户的表,表名和表结构 ...

  7. Voting CodeForces - 749C (set,模拟)

    大意: n个人, 两个党派, 轮流投票, 两种操作(1)ban掉一个人 (2)投票, 每轮一个未被ban的人可以进行一次操作(1)或操作(2), 求最终哪个党派得票最多. 显然先ban人会更优, 所以 ...

  8. openCV 二 图像处理

    官网:https://docs.opencv.org/3.2.0/df/d9d/tutorial_py_colorspaces.html 改变颜色空间 本教程颜色空间转换:BGR ↔ Gray and ...

  9. java 序列化原来如此

    上次面试的时候 ,如何实现java 类的序列化,当时感觉这个问题很简单,我的回答是实现serizlizable 接口就好了,可以实现对象的持久化,看了看书,原来这样: public class Ser ...

  10. 2019-11-29-dotnet-使用-System.CommandLine-写命令行程序

    title author date CreateTime categories dotnet 使用 System.CommandLine 写命令行程序 lindexi 2019-11-29 08:33 ...