在Linux系统中,大多数配置文件、日志文件,甚至shell脚本都使用文本文件格式,因此,Linux系统存在着多种文本编辑器,但当你仅仅想要查看一下这些文件的内容时,可使用一个简单的命令-cat。

cat手册里这样描述:

cat命令读取文件内容,并输出到标准设备上面

cat是一条linux内置命令. 几乎所有linux发行版都内置(译注:或者说我从未听说过不内置cat命令的发行版)。接下来,让我们开始学习如何使用.

1. 显示文件内容

最简单的方法是直接输入‘cat file_name’.

# cat /etc/issue

CentOS release 5.10 (Final)
Kernel \r on an \m

2. 同时显示行号

当在读取内容很多的配置文件时,如果同时显示行号将会使操作变简单,加上-n参数可以实现.

# cat -n /etc/ntp.conf

1 # Permit time synchronization our time resource but do not
2 # permit the source to query or modify the service on this system
3 restrict default kod nomodify notrap nopeer noquery
4 restrict -6 default kod nomodify notrap nopeer noquery
5
6 # Permit all access over the loopback interface. This could be
7 # tightened as well, but to do so would effect some of the
8 # administration functions
9 restrict 127.0.0.1
10 restrict -6 ::1

3. 在非空格行首显示行号

类似于-n参数,-b也可以显示行号。区别在于-b只在非空行前显示行号。

#cat -b /etc/ntp.conf

1 # Permit time synchronization our time resource but do not
2 # permit the source to query or modify the service on this system
3 restrict default kod nomodify notrap nopeer noquery
4 restrict -6 default kod nomodify notrap nopeer noquery 5 # Permit all access over the loopback interface. This could be
6 # tightened as well, but to do so would effect some of the
7 # administration functions
8 restrict 127.0.0.1
9 restrict -6 ::1

4. 显示tab制表符

当你想要显示文本中的tab制表位时. 可使用-T参数. 它会在输入结果中标识为 ^I .

# cat -T /etc/hosts

# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1^I^Ilocalhost.localdomain localhost
::1^I^Ilocalhost6.localdomain6 localhost6

5. 显示换行符

-E参数在每行结尾使用 $ 表示换行符。如下所示 :

# cat -E /etc/hosts

# Do not remove the following line, or various programs$
# that require network functionality will fail.$
127.0.0.1 localhost.localdomain localhost$
::1 localhost6.localdomain6 localhost6$

6. 同时显示制表符及换行符

当你想要同时达到-T及-E的效果, 可使用-A参数.

# cat -A /etc/hosts

# Do not remove the following line, or various programs$
# that require network functionality will fail.$
127.0.0.1^I^Ilocalhost.localdomain localhost$
::1^I^Ilocalhost6.localdomain6 localhost6$

7. 分屏显示

当文件内容显示超过了你的屏幕大小, 可结合cat命令与其它命令分屏显示。使用管道符 ( | )来连接。

# cat /proc/meminfo | less

# cat /proc/meminfo | more

在less与more显示结果的区别在于less参数可pageup及pagedown上下翻滚。而more仅能使用空格向下翻屏。

8. 同时查看2个文件中的内容

位于/root文件夹里有两个文件取名linux及desktop,每个文件含有以下内容 :

Linux : ubuntu, centos, redhat, mint and slackware

Desktop : gnome kde, xfce, enlightment, and cinnamon

当你想同时查看两文件中的内容时,可按如下方法 :

# cat /root/linux /root/desktop

ubuntu
centos
redhat
mint
slackware
gnome
kde
xfce
enlightment
cinnamon

9. 排序显示

类似. 你也可以结合cat命令与其它命令来进行自定义输出. 如结合 sort ,通过管道符对内容进行排序显示。举例 :

# cat /root/linux | sort

centos
mint
redhat
slackware
Ubuntu

10. 输入重定向

你也可将显示结果输出重定向到屏幕或另一个文件。 只需要使用 > 符号(大于号)即可输出生成到另一个文件。

# cat /root/linux > /root/linuxdistro

以上命令会生成一个与/root/linux内容一模一样的叫linuxdistro的文件.

11. 新建文件

Linux下有多种方法新建文件。其中使用cat就是方法之一.

# cat > operating_system

Unix
Linux
Windows
MacOS

当你输入cat > operatingsystem,它会生成一个operatingsystem的文件。然后下面会显示空行。此时你可输入内容。比如我们输入Unix, Linux, Windows 和 MacOS, 输入完成后,按Ctrl-D存盘退出cat。此时你会发现当前文件夹下会生成一个包含你刚才输入内容的叫operating_system的文件。

12.向文件中追加内容

当你使用两个 > 符时, 会将第一个文件中的内容追加到第二个文件的末尾。 举例 :

# cat /root/linux >> /root/desktop

# cat /root/desktop

它会将 /root/linux的内容追加到/root/desktop文件的末尾。

第二个文件的内容将会变成这样:

gnome
kde
xfce
enlightment
cinnamon
ubuntu
centos
redhat
mint
slackware

13. 重定向输入

你可使用 <命令(小于号)将文件输入到cat中.

# cat < /root/linux

上面命令表示 /root/linux中的内容作为cat的输入。屏幕上显示如下 :

ubuntu
centos
redhat
mint
slackware

为了更清楚表示它的意义,我们使用以下命令 :

# cat < /root/linux | sort > linux-sort

此命令这样理解: 从/root/linux中读取内容,然后排序,将结果输出并生成linux-sort新文件

然后我们看看linux-sort中的内容 :

centos
mint
redhat
slackware
ubuntu

以上是一些cat命令的日常基本应用. 更多相关你可从cat命令手册中学到并记得经常练习它们.

cat命令常用的13个技巧的更多相关文章

  1. shell基础--cat命令的使用

    一.cat的常用用法 1.总结 2.实验 (1).非交互式编辑 [root@~_~ day5]# cat > cattest.sh <<STOP > hello > ST ...

  2. 13 Basic Cat Command Examples in Linux(转) Linux中cat命令的13中基本用法

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

  3. Linux中的13个基本Cat命令示例

    cat(“ concatenate ”的缩写)命令是Linux / Unix等操作系统中最常用的命令之一.cat命令允许我们创建单个或多个文件,查看文件包含,连接文件以及在终端或文件中重定向输出.在本 ...

  4. 13个Cat命令管理文件实例汇总

    在Linux系统中,大多数配置文件.日志文件,甚至shell脚本都使用文本文件格式,因此,Linux系统存在着多种文本编辑器,但当你仅仅想要查看一下这些文件的内容时,可使用一个简单的命令-cat. c ...

  5. 13个Cat命令管理(显示,排序,建立)文件实例

    在Linux系统中,大多数配置文件.日志文件,甚至shell脚本都使用文本文件格式,因此,Linux系统存在着多种文本编辑器,但当你仅仅想要查看一下这些文件的内容时,可使用一个简单的命令-cat. c ...

  6. Linux学习之常用网络通信命令与shell简单应用技巧(四)

    (一)常用网络通信命令 (1)ping命令 (2)write命令 (3)wall命令 (4)ifconfig命令 (5)shutdown命令 (6)reboot命令 (二)shell简单应用技巧 (1 ...

  7. linux常用命令:cat 命令

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

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

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

  9. 每天一个Linux常用命令 cat命令

    在Linux系统中,cat命令是一个文本输出命令,通常用来查看某个文档的内容.它有如下三个功能: 1.一次性显示整个文件 如:查看/etc/initab文件,可以使用命令:cat/etc/initta ...

随机推荐

  1. 支持BLOB操作的Jena框架扩展——JenaBLOB

    与研究语义网的同行们分享一下上半年做的一个东西,它是支持BLOB操作的Jena框架扩展--JenaBLOB,已在GitHub上开源,欢迎提出宝贵意见! 众所周知,Jena是不支持BLOB类型的Lite ...

  2. 使用 ICharpCode.SharpZipLib 压缩指定目录结构

    今天做项目中遇见一个压缩问题,我的目录结构是树形菜单,文件在服务器存储是平面存储,没有目录结构,所以在下载指定目录的时候要构建目录结构,如下: 当我右键点击下载b目录文件夹的时候要Download   ...

  3. 第十二篇、HTML常用框架收集

    1.Swiper 广告轮播插件 2.Bootstrap 响应式布局 3.jQuery js兼容插件 4.jQuery Mobile 5.phoneGap

  4. 第三篇、FMDB使用

    简介: FMDB是基于SQlite3的封装一个第三方的OC库,操作起来更加简单,性能比Coredata更加高. 1.创建sqlite文件 2.导入FMDB头文件 3.创建数据库表table 4.编写s ...

  5. 第五篇、常用的SQL语句和函数介绍

    简介: 在使用到sqlite3的时候,常常需要写一些SQL语句,现将常用到的部分语句稍微总结以下,由于个人习惯,关键字用大写. 附: /*简单约束*/ CREATE TABLE IF NOT EXIS ...

  6. StrHelper

    public class StrHelper { private static string passWord; //加密字符串 /// <summary> /// 判断输入是否数字 // ...

  7. JavaScript基础-面向对象编程<1>

    1.1 函数与对象  1.定义函数的方式定义类 定义类的方法: function class1(){ //类成员的定义及构造函数部分 } class1既是一个函数,也是一个类. 使用 new 操作符获 ...

  8. Java基础从数组到集合之间关键字的区别!!!!

    1.&& 和 &区别和联系: 相同点 : 结果是一样的.       不同点 :如果使用双&号判断,如果说条件一为false,不会判断条件二,但是单&号会继续判 ...

  9. [Guava官方文档翻译] 1.Guava简介 (Introduction)

    用户指南 Guava包含Google在Java项目中用到的一些核心库:collections, caching, primitives support, concurrency 库, common a ...

  10. mysql密码忘记后重置密码

    之前在centOS里安装了xampp,设置了mysql数据库root密码,今天需要增加个数据库,发现忘记之前设置的密码是什么了.经过一番摸爬滚打,终于搞明白了,注意以下的操作都是以linux的root ...