cat命令

主要用来查看文件内容,创建文件,文件合并,追加文件内容。cat指令打开的文件只能够浏览不能够修改。语法:

cat [选项] 文件名

常用选项

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

注意:cat指令查看一个文件内容的时候,如果这个文件内容过多,cat指令会显示文件最后内容,而后就关闭文件了,这样阅读起来,非常不方便,所以一般使用cat指令的时候都会配合"more"指令,一起使用,(其中"|"是管道符,表示连接前面指令,将前面的内容交给more指令分页显示的意思)

cat 文件目录 | more

创建文件以及写入文件内容

语法

cat > 文件名称 << 结束标识符

注意:创建文件的时候要设置文件结束标志,也就是<<EOF,可以把EOF换成别的字符,注意是大小写敏感的,当文件内容写完之后要输入结束标志EOF,这时命令会正确结束,表示成功创建文件并且写进内容。

Linux cat、more、less命令_文件名

合并文件

语法

cat [原文件1名称][原文件2名称]…… >>或> [合并后的文件名称]

注意:
1、>>:代表不覆盖合并后的文件
2、>:代表覆盖合并后的文件

注意:

1、把文件4.txt,5.txt的文件内容写入到6.txt中,如果6.txt文件以前有内容,则先会清除它们然后再写入合并后的内容。如果不想清除文件内容,则可以把单边号>变成了双边号>>。

2、如果没有合并后的文件不存在,则自动创建该文件。

Linux cat、more、less命令_搜索_02

追加文件
语法

cat >> 文件名称 << 结束标识符

Linux cat、more、less命令_其他_03

more命令

more命令类似与cat命令,却比cat命令强大,它以全屏幕的方式按页显示文本文件的内容,支持vi中的关键字定位操作:

  • space,  z 向下翻页
  • b,ctrl+b       向上翻页 
  • Enter       向下滚动 1 行
  • =        显示当前行号
  • v      用vi编辑器打开当前内容
  • :f               显示当前文档文件名与当前行号
  • d,ctrl+D       向下翻 K 行,默认k=11
  • q,Q              退出more
  • ctrl+L              类似于清屏
  • h                      显示快捷键帮助

语法:

more [选项] 文件名

命令选项

注意:more命令同样也支持cat命令中合并、创建、追加文件的方法。 

  • -num 一次显示的行数
  • -d 提示使用者,在画面下方显示 [Press space to continue, 'q' to quit.] ,如果使用者按错键,则会显示 [Press 'h' for instructions.] 而不是 '哔' 声
  • -l 取消遇见特殊字元 ^L(送纸字元)时会暂停的功能
  • -f 计算行数时,以实际上的行数,而非自动换行过后的行数(有些单行字数太长的会被扩展为两行或两行以上)
  • -p 不以卷动的方式显示每一页,而是先清除萤幕后再显示内容
  • -c 跟 -p 相似,不同的是先显示内容再清除其他旧资料
  • -s 当遇到有连续两行以上的空白行,就代换为一行的空白行
  • -u 不显示下引号 (根据环境变数 TERM 指定的 terminal 而有所不同)
  • +/pattern 在每个文档显示前搜寻该字串(pattern),然后从该字串之后开始显示
  • +num 从第 num 行开始显示
  • fileNames 欲显示内容的文档,可为复数个数

less命令

less的功能和more相似,但是使用more无法向前翻页,只能向后翻,而less可以任意切换。语法:

less [选项] 文件名 

命令选项 

  • -b <缓冲区大小> 设置缓冲区的大小
  • -e 当文件显示结束后,自动离开
  • -f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
  • -g 只标志最后搜索的关键词
  • -i 忽略搜索时的大小写
  • -m 显示类似more命令的百分比
  • -N 显示每行的行号
  • -o <文件名> 将less 输出的内容在指定文件中保存起来
  • -Q 不使用警告音
  • -s 显示连续空行为一行
  • -S 行过长时间将超出部分舍弃
  • -x <数字> 将"tab"键显示为规定的数字空格
  • /字符串:向下搜索"字符串"的功能
  • ?字符串:向上搜索"字符串"的功能
  • n:重复前一个搜索(与 / 或 ? 有关)
  • N:反向重复前一个搜索(与 / 或 ? 有关)
  • b 向后翻一页
  • d 向后翻半页
  • h 显示帮助界面
  • Q 退出less 命令
  • u 向前滚动半页
  • y 向前滚动一行
  • 空格键 滚动一页
  • 回车键 滚动一行
  • [pagedown]: 向下翻动一页
  • [pageup]: 向上翻动一页