Linux命令之文件内容显示:cat 、tac 和 rev 命令详解

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/afei__/article/details/81901296

一、说明

这三个命令都可以链接文件并将内容打印在标准输出上。

  • cat 命令是从文件的第一行扫描到最后一行;
  • tac 命令是从文件的最后一行扫描到第一行,它就是 cat 倒过来写的;
  • rev 命令是 reverse 的缩写,也是从文件的第一行扫描到最后一行,不过每行都是反转输出的。

 

二、语法格式

1. cat [-AbeEnstTuv] [--help] [--version] [File…]

参数说明:

  • -n 或 --number:由 1 开始对所有输出的行数编号
  • -b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号
  • -s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行
  • -v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 TAB 之外
  • -E 或 --show-ends:在每行结束处显示 $
  • -T 或 --show-tabs:将 TAB 字符显示为 ^I
  • -e:等价于 -vE
  • -A 或 --show-all:等价于 -vET
  • -e:等价于”-vE”选项
  • -t:等价于”-vT”选项
  • --help:显示此帮助信息并退出
  • --version:显示版本信息并退出

 

2. tac [-brs] [--help] [--version] [File…]

参数说明:

  • -b 或 --before:在行前而非行尾添加分隔标志
  • -r 或 --regex:将分隔标志视作正则表达式来解析
  • -s 或 --separator=字符串:使用指定字符串代替换行作为分隔标志
  • --help:显示此帮助信息并退出
  • --version:显示版本信息并退出

 

3. rev [-hV] [--help] [--version] [File…]

参数说明:

  • -h 或 --help:显示此帮助信息并退出
  • -V 或 --version:显示此版本信息并退出

 

三、示例

假设文件夹下有这样一个文本文件 test.txt,其内容为:

afei
test

执行哥命令,输出如下:

➜ cat test.txt
afei
test
➜ tac test.txt
test
afei
➜ rev test.txt
iefa
tset

 

四、扩展

1. 使用 > 和 >> 可以将标准输出内容重定向到指定文件

其中 > 是覆盖到目标文件,>> 是追加到目标文件。

例如将 test.txt 文档内容加上行号后输出到 test2.txt 文件中:

cat -n test.txt > test2.txt

2. 清空文件内容

/dev/null 是一个空文件,利用它可以实现清空效果

cat /dev/null > test.txt

猜你喜欢

转载自blog.csdn.net/afei__/article/details/81901296