Cat (串联) 命令是Linux/Unix开源系统中比较常用的一个命令。我们可以通过Cat命令创建一个或多个文件,查看文件内容,串联文件并将内容输出到终端设备或新的文件当中,这篇文章我们将会以实例的方式讲解Linux中cat命令一些简便的用法。

The cat (short for “concatenate“) command is one of the most frequently used command in Linux/Unix like operating systems. cat command allows us to create single or multiple files, view contain of file, concatenate files and redirect output in terminal or files. In this article, we are going to find out handy use of cat commands with their examples in Linux.

Read Also: Learn How to use ‘cat’ and ‘tac’ (Reverse of cat Command) in Linux

13中基本的Linux Cat 命令

13 Basic Linux Cat Commands

一般语法格式

General Syntax

cat [OPTION] [FILE]...

1. Display Contents of File(显示文件内容)

In the below example, it will show contents of /etc/passwd file.

下面这个例子,显示出/etc/passwd文件的内容。

# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
narad:x:500:500::/home/narad:/bin/bash

2. View Contents of Multiple Files in terminal(在设备中显示多个文件内容)

In below example, it will display contents of test and test1 file in terminal.

下面这个例子,在设备中显示出test文件和test1文件内容

# cat test test1
Hello everybody
Hi world,

3. Create a File with Cat Command(使用Cat命令创建文件)

We will create a file called test2 file with below command.

我们将通过如下命令格式创建test2文件

# cat >test2

Awaits input from user, type desired text and press CTRL+D (hold down Ctrl Key and type ‘d‘) to exit. The text will be written in test2 file. You can see content of file with following cat command.

输入上面的命令后点击回车按钮,等待用户输入文件内容,同时按住CTRL+D退出编辑。通过下面的命令查看文件内容。

# cat test2
hello everyone, how do you do?

4. Use Cat Command with More & Less Options(使用带有More和Less参数的Cat命令)

If file having large number of content that won’t fit in output terminal and screen scrolls up very fast, we can use parameters more and less with cat command as show above.

如果文件有大量内容,设备输出不够清晰或则屏幕滚动条滚动过快,我们可以通过使用More和Less参数使内容展示更加可控。

# cat song.txt | more
# cat song.txt | less

5. Display Line Numbers in File(文件内显示内容行号)

With -n option you could see the line numbers of a file song.txt in the output terminal.

通过 -n 参数可以使song.txt文件的内容在设备中带行号显示

# cat -n song.txt
1 "Heal The World"
2 There's A Place In
3 Your Heart
4 And I Know That It Is Love
5 And This Place Could
6 Be Much
7 Brighter Than Tomorrow
8 And If You Really Try
9 You'll Find There's No Need
10 To Cry
11 In This Place You'll Feel
12 There's No Hurt Or Sorrow

6. Display $ at the End of File(在文件末尾显示$符号)

In the below, you can see with -e option that ‘$‘ is shows at the end of line and also in space showing ‘$‘ if there is any gap between paragraphs. This options is useful to squeeze multiple lines in a single line.

如下,使用-e参数,在文件内容的末尾和空格处会出现$符号。这个选项对于一行中挤压多行很有帮助。

# cat -e test
hello everyone, how do you do?$
$
Hey, am fine.$
How's your training going on?$
$

7. Display Tab separated Lines in File(文件内容中显示Tab分隔符)

In the below output, we could see TAB space is filled up with ‘^I‘ character.

如下输出内容中,我们可以看到Tab分隔的内容使用 ‘^I‘ 填充。

# cat -T test
hello ^Ieveryone, how do you do?
Hey, ^Iam fine.
^I^IHow's your training ^Igoing on?
Let's do ^Isome practice in Linux.

8. Display Multiple Files at Once(一次性显示多个文件内容)

In the below example we have three files test, test1 and test2 and able to view the contents of those file as shown above. We need to separate each file with ; (semi colon).

这个例子中,我们可以同时查看test, test1, test2三个文件的内容,三个文件之间使用 ;(分号)隔开。

# cat test; cat test1; cat test2
This is test file
This is test1 file.
This is test2 file.

9. Use Standard Output with Redirection Operator(使用重定向操作符作为标准输出)

We can redirect standard output of a file into a new file else existing file with ‘>‘ (greater than) symbol. Careful, existing contents of test1 will be overwritten by contents of test file.

我们可以使用大于号>将文件内容复制到新的文件或已存在的文件中,注意:复制到已存在的文件时会覆盖已有内容。

# cat test > test1

10. Appending Standard Output with Redirection Operator(使用重定向操作符将追加内容)

Appends in existing file with ‘>>‘ (double greater than) symbol. Here, contents of test file will be appended at the end of test1 file.

使用两个大于号>>将新的内容追加到已有内容的末尾。

# cat test >> test1

11. Redirecting Standard Input with Redirection Operator(使用重定向操作符将内容输出)

When you use the redirect with standard input ‘<‘ (less than symbol), it use file name test2 as a input for a command and output will be shown in a terminal.

我们可以使用小于号<,将test2文件的内容显示到设备中。

# cat < test2
This is test2 file.

12. Redirecting Multiple Files Contain in a Single File(将多个文件内容合并到一个文件中)

This will create a file called test3 and all output will be redirected in a newly created file.

将test, test1, test2的内容合并到test3文件中

# cat test test1 test2 > test3

13. Sorting Contents of Multiple Files in a Single File(将多个文件的内容合并到一个文件中并排序)

This will create a file test4 and output of cat command is piped to sort and result will be redirected in a newly created file.

# cat test test3 test2 test1 | sort > test4
例如: test文件内容是:this is test file content.
test3文件内容: this is test3 file content.
test2文件内容: this is test2 file content.
test1文件内容:this is test1 file content.
最后输出的test4文件内容:

this is test1 file content.
this is test2 file content.
this is test3 file content.
this is test file content.

13 Basic Cat Command Examples in Linux(转) Linux中cat命令的13中基本用法的更多相关文章

  1. 13 Basic Cat Command Examples in Linux

    FROM: http://www.tecmint.com/13-basic-cat-command-examples-in-linux/ The cat (short for “concatenate ...

  2. 15 Basic ‘ls’ Command Examples in Linux

    FROM: http://www.tecmint.com/15-basic-ls-command-examples-in-linux/ ls command is one of the most fr ...

  3. 00014 - linux中用top、ps命令查看进程中的线程

    在Linux上显示某个进程的线程的几种方式. 方法一:PS 在ps命令中,“-T”选项可以开启线程查看.下面的命令列出了由进程号为<pid>的进程创建的所有线程. 1.$ ps -T -p ...

  4. Linux bash脚本及常用命令--不断更新中

    1.如何在向alias命令传递参数: 这种用法的话就需要使用函数来配合使用. 如要cd到指定目录,并且ls当前目录下的文件可以使用:  alias cdls='cdls(){ cd $1; ls; } ...

  5. Linux 查看磁盘空间 相关命令

    Linux 查看磁盘空间 相关命令 实际工作中,我们经常需要查看磁盘空间的使用情况,以防止磁盘空间不足,导致的系统崩溃或者服务异常等问题. 常用的磁盘空间查看命令如下: 1.查看磁盘空间的整体使用情况 ...

  6. 15 Linux Split and Join Command Examples to Manage Large Files--reference

    by HIMANSHU ARORA on OCTOBER 16, 2012 http://www.thegeekstuff.com/2012/10/15-linux-split-and-join-co ...

  7. 18 Tar Command Examples in Linux

    FROM: http://www.tecmint.com/18-tar-command-examples-in-linux/ 18 Tar Command Examples in Linux By R ...

  8. 12 Linux Which Command, Whatis Command, Whereis Command Examples

    This Linux tutorial will explain the three "W" commands. The three "W"s are what ...

  9. 【Linux高频命令专题(13)】cat

    概述 常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. cat主要有三大功能: 1.一次显示整个文件:cat filename 2.从键盘创建一 ...

随机推荐

  1. C#学习笔记-策略模式

    题目:做一个商场收银的小程序,可能会出现的情况包括:正常收费,九折优惠,七折优惠,满300减50等各种不同随时会变化的优惠活动. 界面如下: 分析: 首先我们对于收钱写一个父类CashSuper.这个 ...

  2. 12、ABPZero系列教程之拼多多卖家工具 拼团提醒功能登录拼多多实现

    上篇文章已经完成了整个拼多多拼团提醒功能,本篇继续完成拼多多帐号登录,拼多多帐号登录的目的是为了获取拼团商品的SKU和订单号,便于商家备货. 以下是拼多多官方的后台登录,要实现的功能并不是直接在这里登 ...

  3. c++(八皇后)

    八皇后是一道很具典型性的题目.它的基本要求是这样的:在一个8*8的矩阵上面放置8个物体,一个矩阵点只允许放置一个物体,任意两个点不能在一行上,也不能在一列上,不能在一条左斜线上,当然也不能在一条右斜线 ...

  4. Java应用开发中的字符集与字符编码

    事出有因 在向HttpURLConnection的输出流写入内容时,因没有设置charset,导致接收方对数据的验签不一致. URL url = new URL(requestUrl); //打开连接 ...

  5. MFC中菜单的命令响应顺序

    响应只可以由Doc,View,MainFrame以及APP四个类完成. 响应顺序是: 点击某菜单项,框架类最先接到菜单命令消息. 框架类把接收到得这个消息交给它的子窗口,即视图类. 视图类根据命令消息 ...

  6. [OpenCV学习笔记1][OpenCV基本数据类型]

    CvPoint基于二维整形坐标轴的点typedef struct CvPoint{int x; /* X 坐标, 通常以 0 为基点 */int y; /* y 坐标,通常以 0 为基点 */}CvP ...

  7. Docker+Jenkins持续集成环境(4):使用etcd+confd实现容器服务注册与发现

    前面我们已经通过jenkins+docker搭建了基本的持续集成环境,实现了服务的自动构建和部署,但是,我们遇到一个问题,jenkins构建出来的镜像部署后,需要通过ip:port去访问,有什么更好的 ...

  8. ABB安全区域(全局区域)的指令解析

    VAR wztemporary wzone;//VAR:变量 //wztemporary:全局区域数据类型(wztemporary临时全局区域数据.wzstationary固定式全局区域)wzone: ...

  9. HDU 1562 Oil Deposits

    题目: The GeoSurvComp geologic survey company is responsible for detecting underground oil deposits. G ...

  10. 邓_tp_笔记

    <?phpnamespace app\teacher\controller;use think\Db;use app\common\model\Classcourse;use app\commo ...