cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令。

注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。为了控制滚屏,可以按Ctrl+S键,停止滚屏;按Ctrl+Q键可以恢复滚屏。按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态。

    (1)用法:

用法:cat [选项] [文件]...

    (2)功能:

将[文件]或标准输入组合输出到标准输出。

    (3)选项参数:

      1)-n, --number                                    对输出的所有行编号

2) -s, --squeeze-blank                           不输出多行空行,有连续两行以上的空白行,就代换为一行的空白行

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

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

5) -A, --show-all                                   等价于 -vET,显示不可打印字符,行尾显示“$”

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

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

8) --help                                              显示此帮助信息并退出

9) --version                                          输出版本信息并退出

    (4)实例:

        由于cat命令是查看文档的,所以首先新建文本文档test1.txt,test2.txt,test3.txt并在文档中写入内容:

方法一:

(1)首先用touch指令新建三个文档:

  1. [sunjimeng@localhost Document]$ touch {text1.txt,text2.txt,text3.txt}
  2. [sunjimeng@localhost Document]$ ll
  3. 总用量
  4. -rw-rw-r--. sunjimeng sunjimeng 5 : text1.txt
  5. -rw-rw-r--. sunjimeng sunjimeng 5 : text2.txt
  6. -rw-rw-r--. sunjimeng sunjimeng 5 : text3.txt

(2)用图形界面,打开文档输入数据:

(3)由于在CentOs里文档有自动备份的功能,因此这里有6个文档。其中带~符号的需要用查看备份的软件来打开:

(4)查看shell中的文档信息:

  1. [sunjimeng@localhost Document]$ ll
  2. 总用量
  3. -rw-rw-r--. sunjimeng sunjimeng 5 : text1.txt
  4. -rw-rw-r--. sunjimeng sunjimeng 5 : text1.txt~
  5. -rw-rw-r--. sunjimeng sunjimeng 5 : text2.txt
  6. -rw-rw-r--. sunjimeng sunjimeng 5 : text2.txt~
  7. -rw-rw-r--. sunjimeng sunjimeng 5 : text3.txt
  8. -rw-rw-r--. sunjimeng sunjimeng 5 : text3.txt~

方法二:在shell中直接修改文档的内容:

  1. [sunjimeng@localhost Document]$ touch text4.txt
  2. [sunjimeng@localhost Document]$ cat >text4.txt <<EOF
  3. > test4's first line;
  4. > test4's second line;
  5. > test4's third line;
  6. > EOF
  7. [sunjimeng@localhost Document]$ ll
  8. 总用量
  9. -rw-rw-r--. sunjimeng sunjimeng 5月 : text1.txt
  10. -rw-rw-r--. sunjimeng sunjimeng 5月 : text1.txt~
  11. -rw-rw-r--. sunjimeng sunjimeng 5月 : text2.txt
  12. -rw-rw-r--. sunjimeng sunjimeng 5月 : text2.txt~
  13. -rw-rw-r--. sunjimeng sunjimeng 5月 : text3.txt
  14. -rw-rw-r--. sunjimeng sunjimeng 5月 : text3.txt~
  15. -rw-rw-r--. sunjimeng sunjimeng 5月 : text4.txt //这里并没有创建备份文件,是区别所在
  16. [sunjimeng@localhost Document]$

1)[sunjimeng@localhost Document]$ cat -n text4.txt                 将包括空行在内的各行按编号输出

  1. [sunjimeng@localhost Document]$ cat >text4.txt <<EOF //先修改text4.txt的内容
  2. > text4's first line
  3. >
  4. >
  5. > text4's second line
  6. >
  7. > text4's third line
  8. >
  9. >
  10. > EOF
  1. [sunjimeng@localhost Document]$ cat -n text4.txt
  2. text4's first line
  3.  
  4. text4's second line
  5.  
  6. text4's third line

2)[sunjimeng@localhost Document]$ cat -b text4.txt               将除空行在内的各行按编号输出

  1. [sunjimeng@localhost Document]$ cat -b text4.txt
  2. text4's first line
  3.  
  4. text4's second line
  5.  
  6. text4's third line

3)[sunjimeng@localhost Document]$ cat text1.txt text2.txt text3.txt        用cat命令直接输出各个文件,可以是一个也可以是多个

  1. [sunjimeng@localhost Document]$ cat text1.txt text2.txt text3.txt
  2. test1's first line;
  3. test1's second line;
  4. test1's third line;
  5. test2's first line;
  6. test2's second line;
  7. test2's third line;
  8. test3's first line;
  9. test3's second line;
  10. test3's third line;

4)[sunjimeng@localhost Document]$ cat text1.txt text2.txt > text5.txt             将讲text1.txt和text2.txt输出到text5.txt里,和输出到标准输出一样,也可以有-n,-b等参数

由于这个特性,cat命令可以将多个压缩包合并成一个,可以用tar命令解压

  1. # cat test.tar.gz_?? > test.tar.gz #可以用cat命令将被切割的多个压缩包合并成一个
  2. # tar -xvzf test.tar.gz #再用tar命令解压
  1. [sunjimeng@localhost Document]$ cat text1.txt text2.txt > text5.txt
  2. [sunjimeng@localhost Document]$ cat text5.txt
  3. test1's first line;
  4. test1's second line;
  5. test1's third line;
  6. test2's first line;
  7. test2's second line;
  8. test2's third line;
  9. [sunjimeng@localhost Document]$

5)[sunjimeng@localhost Document]$ tac text5.txt                  倒序输出文件的各行内容

  1. [sunjimeng@localhost Document]$ tac text5.txt
  2. test2's third line;
  3. test2's second line;
  4. test2's first line;
  5. test1's third line;
  6. test1's second line;
  7. test1's first line;

6)[sunjimeng@localhost Document]$ cat -s text4.txt                    输出文档中的内容,如果有多个空行则用一个代替

  1. [sunjimeng@localhost Document]$ cat -s text4.txt 最多连续输出一个空行
  2. text4's first line
  3.  
  4. text4's second line
  5.  
  6. text4's third line
  7.  
  8. [sunjimeng@localhost Document]$ cat text4.txt 有多少空行,输出多少空行
  9. text4's first line
  10.  
  11. text4's second line
  12.  
  13. text4's third line

7)[sunjimeng@localhost Document]$ cat >text6.txt                      从键盘录入内容到文件,回车是保存,退出Ctrl+z

  1. [sunjimeng@localhost Document]$ cat >text6.txt
  2. I am MenAngel! //除了最后一个回车之后,其余回车是文档中数据的换行并保存
  3. Practice Order!
  4. ^Z //回车后是Ctrl+Z命令退出
  5. []+ 已停止 cat > text6.txt
  6. [sunjimeng@localhost Document]$ cat text6.txt
  7. I am MenAngel!
  8. Practice Order!

8)[sunjimeng@localhost Document]$ cat -E text4.txt                    输出各行文本,并且以$符结尾

  1. [sunjimeng@localhost Document]$ cat -E text4.txt
  2. text4's first line$
  3. $
  4. $
  5. text4's second line$
  6. $
  7. text4's third line$
  8. $
  9. $

9)[sunjimeng@localhost Document]$ cat >text6.txt <<EOF              用$取表达式的值小小范例:

  1. [sunjimeng@localhost Document]$ cat >text6.txt <<EOF
  2. > pwd=$(pwd)
  3. > EOF
  4. [sunjimeng@localhost Document]$ cat text6.txt
  5. pwd=/home/sunjimeng/Document

10)[sunjimeng@localhost Document]$ cat --help

  1. [sunjimeng@localhost Document]$ cat --help
  2. 用法:cat [选项]... [文件]...
  3. 将[文件]或标准输入组合输出到标准输出。
  4.  
  5. -A, --show-all 等于-vET
  6. -b, --number-nonblank 对非空输出行编号
  7. -e 等于-vE
  8. -E, --show-ends 在每行结束处显示"$"
  9. -n, --number 对输出的所有行编号
  10. -s, --squeeze-blank 不输出多行空行
  11. -t 与-vT 等价
  12. -T, --show-tabs 将跳格字符显示为^I
  13. -u (被忽略)
  14. -v, --show-nonprinting 使用^ M- 引用,除了LFD TAB 之外
  15. --help 显示此帮助信息并退出
  16. --version 显示版本信息并退出
  17.  
  18. 如果没有指定文件,或者文件为"-",则从标准输入读取。
  19.  
  20. 示例:
  21. cat f - g 先输出f 的内容,然后输出标准输入的内容,最后输出g 的内容。
  22. cat 将标准输入的内容复制到标准输出。
  23.  
  24. GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
  25. 请向<http://translationproject.org/team/zh_CN.html> 报告cat 的翻译错误
  26. 要获取完整文档,请运行:info coreutils 'cat invocation'

11)[sunjimeng@localhost Document]$ cat --version

  1. [sunjimeng@localhost Document]$ cat --version
  2. cat (GNU coreutils) 8.22
  3. Copyright (C) Free Software Foundation, Inc.
  4. 许可证:GPLv3+:GNU 通用公共许可证第3 版或更新版本<http://gnu.org/licenses/gpl.html>。
  5. 本软件是自由软件:您可以自由修改和重新发布它。
  6. 在法律范围内没有其他保证。
  7.  
  8. Torbjörn Granlund Richard M. Stallman 编写。

每天一个Linux命令(8)cat命令的更多相关文章

  1. Linux命令学习-cat命令

    Linux中,cat命令的全称是concatenate,主要用于显示文件内容. 查看centos系统版本 cat /etc/centos-release 查看文件 gogs.log 的内容 cat g ...

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

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

  3. linux常用命令:cat 命令

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

  4. 全网最详细的Linux命令系列-cat命令

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

  5. linux常用命令(8)cat命令

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

  6. linux命令之------Cat命令

    Cat命令 作用:cat命令用于连接文件并打印,查看文件内容: -n或--number:由1开始对所有输出的行数编号: -b或--number-nonblank:和-n相似,只不过对于空白行不做编号: ...

  7. 【Linux常见命令】cat命令

    cat - concatenate files and print on the standard output cat 命令用于连接文件并打印到标准输出设备上. 用法: 1. cat file 查看 ...

  8. 【Linux】使用cat命令创建文本文件

    在Linux界面输入 Linux:/usr/test # cat >test01.sh 接着按回车,输入内容:"echo hello world !" 回车后按 ctrl+d ...

  9. Centos文件切割利器_split命令及cat命令合并文件

    有个文件要处理,因为很大,所以想把它切成若干份,每份N行,以便并行处理.split命令可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,为提高可读性,生成日志等 命令格式 -b:值为 ...

  10. Linux命令:cat命令详解

    概述:查看文件内容,连接文件,重定向输出到文件 1.查看整个文件 2.cat > filename 创建文件 3.合并输出到文件 1.查看文件(单个或者多个) cat demo.txt 2.创建 ...

随机推荐

  1. Linux ssh修改文件

    cd 你要修改的文件所在目录vi 你需要修改的文件名 这之后你就会进入vi编辑界面按"i"进入编辑模式正常修改就行按"ESC"进入命令模式,输入 ": ...

  2. .aspx 页面引用命名空间

    一.单个页面引用: <%@ Import Namespace="" %> 二.所有页面引用,Web.config配置如下: <system.web> < ...

  3. Linux终端:speedtest_cli检测你的实时带宽速度

    你在家(或者办公室)的上传和下载速度如何?你能保证,你支付费用给ISP的同时得到了等价的回报? 要想测试我们因特网连接的速度,当下存在着一些因特网服务,比如说SpeedTest,这是一种可以通过Web ...

  4. 500 lines or less

    今天碰到一本书 <500 lines or less>突然就想在博客上记录一下自己的阅读经历了. 现在记录一下这本书的地址 http://aosabook.org/en/index.htm ...

  5. SQL:OUTER JOIN使用方法具体解释

    SQL--JOIN使用方法 外联接. 外联接能够是左向外联接.右向外联接或完整外部联接.  在 FROM 子句中指定外联接时,能够由下列几组keyword中的一组指定: LEFT JOIN 或 LEF ...

  6. 过年啦!小B高兴的不行了,她收到了很多红包,可以实现好多的愿望呢。小B可是对商店货架上心仪的货物红眼好久了,只因囊中羞涩作罢,这次她可是要大大的shopping一番。小B想去购物时,总是习惯性的把要买的东西列在一个购买清单上,每个物品单独列一行(即便要买多个某种物品),这次也不例外。

    include "stdafx.h" #include<iostream> #include<vector> #include <algorithm& ...

  7. linux下常用网页查看下载工具--wget

    http://www.linuxidc.com/Linux/2015-06/118256.htm 5 个基于Linux命令行的文件下载和网站浏览工具 rTorrent.wget.cURL.w3m.El ...

  8. X264使用指南

    x264是一个开源的H.264视频编码器库.是目前最好的有损视频编码器. 基本用法是 x264 [options]-o outfile infile 主页: http://www.videolan.o ...

  9. 如何简单的实现一个tab页title的动画效果

    首先我们来看看实现的效果 tab上的title沉下去的效果 先来看看布局 <?xml version="1.0" encoding="utf-8"?> ...

  10. 嵌套SQL语句訪问DB2中SQLCA的调用技巧

    在IBM的关系型数据库产品DB2中,使用SQL Communication Area(SQLCA)将程序中嵌套的SQL语句执行情况返回给程序. 在程序中有针对性地对SQLCA实施调用,可对程序中各类S ...