如何在Linux中使用“cat”和“tac”命令与示例

在本文中,我们将介绍一些基本用法cat命令和tac(反向的cat命令 - 打印文件以相反的顺序)与一些实际的例子。

这篇文章是我们的一部分Linux的技巧和提示系列,在这篇文章中,我们将介绍cat命令的一些基本用法(最常使用的Linux命令)和TAC(cat命令的反转-以相反的顺序打印文件),还有一些实用例子。

另请阅读: 13个有用的Linux 'cat'命令示例

Linux中Cat命令的基本用法

cat命令,缩写并置 ,在* nix系统中最常用的命令之一。 该命令的最基本的用法是读取文件,并将其显示到stdout,意思是显示文件在终端上的内容。
# cat file.txt
在Linux中查看文件的内容

在Linux中查看文件的内容

cat命令的另一个用途是读或多个文件相结合并输出发送到监视器如在下面实施例说明。
# cat file1.txt file2.txt file3.txt
查看多个文件的内容

查看多个文件的内容

该命令还可以用来连接(连接)多个文件到使用一个单一的文件“>” Linux的重定向操作符。
# cat file1.txt file2.txt file3.txt > file-all.txt
在Linux中加入多个文件

在Linux中加入多个文件

通过使用附加重定向可以将新的文件的内容添加到底部file-all.txt用下面的语法。
# cat file4.txt >> file-all.txt
将内容文件附加到新文件

将内容文件附加到新文件

cat命令可用于文件的内容复制到一个新的文件。 新文件可以重命名为任意。 例如,将文件从当前位置到复制/tmp/目录。
# cat file1.txt > /tmp/file1.txt 
将文件内容复制到新文件

将文件内容复制到新文件

将文件从当前位置到复制/tmp/目录下,并改名。
# cat file1.txt > /tmp/newfile.cfg
将文件复制到/ tmp位置

将文件复制到/ tmp位置

cat命令的用法少是创建具有以下语法的新文件。 当完成编辑文件命中CTRL+D保存并退出新的文件。
# cat > new_file.txt
使用Cat命令创建新文件

使用Cat命令创建新文件

为了号码的文件的所有输出线,其中包括空行,请使用-n开关。
# cat -n file-all.txt
在文件中向行添加数字

在文件中向行添加数字

要仅显示每一个非空行数使用-b开关。
# cat -b file-all.txt
在文件中打印行号

在文件中打印行号

想了解更多关于Linux cat命令?然后阅读我们的文章约13有用的Linux的'cat'命令的例子

了解如何在Linux中使用Tac Command

在另一方面,在* nix系统一个不太知名的和较少使用的命令是tac命令。 西塔实际上是相反的版本cat它打印文件中的每一行从底线开始,在完成命令(也倒拼)顶行到您的机器标准输出。
# tac file-all.txt
以反向顺序打印内容文件

以反向顺序打印内容文件

一命令的最重要的选择是由表示-s开关,它分离基于字符串或从文件的关键字的文件的内容。
# tac file-all.txt --separator "two"
删除文件中的匹配字符串

删除文件中的匹配字符串

接下来,TAC命令的最重要的用法是,它可以以调试日志文件提供了很大的帮助,扭转日志内容的时间顺序。
$ tac /var/log/auth.log
Or to display the last lines
$ tail /var/log/auth.log | tac
示例输出
howtoing@howtoing ~ $ tac /var/log/auth.log
pr  6 16:09:01 howtoing CRON[17714]: pam_unix(cron:session): session closed for user root
Apr  6 16:09:01 howtoing CRON[17714]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:05:01 howtoing CRON[17582]: pam_unix(cron:session): session closed for user root
Apr  6 16:05:01 howtoing CRON[17583]: pam_unix(cron:session): session closed for user root
Apr  6 16:05:01 howtoing CRON[17583]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:05:01 howtoing CRON[17582]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:00:01 howtoing CRON[17434]: pam_unix(cron:session): session closed for user root
....
howtoing@howtoing ~ $ tail /var/log/auth.log | tac
Apr  6 16:09:01 howtoing CRON[17714]: pam_unix(cron:session): session closed for user root
Apr  6 16:09:01 howtoing CRON[17714]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:05:01 howtoing CRON[17582]: pam_unix(cron:session): session closed for user root
Apr  6 16:05:01 howtoing CRON[17583]: pam_unix(cron:session): session closed for user root
Apr  6 16:05:01 howtoing CRON[17583]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:05:01 howtoing CRON[17582]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 16:00:01 howtoing CRON[17434]: pam_unix(cron:session): session closed for user root
Apr  6 16:00:01 howtoing CRON[17434]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr  6 15:55:02 howtoing CRON[17194]: pam_unix(cron:session): session closed for user root
Apr  6 15:55:01 howtoing CRON[17195]: pam_unix(cron:session): session closed for user root
...
相同cat命令, tac做在了出色的工作操作文本文件 ,但它应在其他类型的文件,特别是二进制文件或其中第一线表示,将运行它的程序文件被避免。