专栏首页浩CodingLinux命令之cat——查看文件内容

Linux命令之cat——查看文件内容

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

1.命令格式:

cat [选项] [文件]...

2.命令功能:

cat主要有三大功能:

1.一次显示整个文件:cat filename

2.从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件.

3.将几个文件合并为一个文件:cat file1 file2 > file

3.命令参数:

-A, --show-all 等价于 -vET

-b, --number-nonblank 对非空输出行编号

-e 等价于 -vE

-E, --show-ends 在每行结束处显示 $

-n, --number 对输出的所有行编号,由1开始对所有输出的行数编号

-s, --squeeze-blank 有连续两行以上的空白行,就代换为一行的空白行

-t 与 -vT 等价

-T, --show-tabs 将跳格字符显示为 ^I

-u (被忽略)

-v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外

4.使用实例:

实例一:把 log2018.log 的文件内容加上行号后输入 log2013.log 这个文件里

命令:

cat -n log2018.log>log2019.log

输出:

说明:log2019.log 这个文件要已经存在,上图可见,2018的内容加上了行号,存到了2019里面。

实例二:把 log2018.log 和 log2019.log 的文件内容加上行号(空白行不加)之后将内容附加到 log.log 里。

命令:

cat -b log2018.log log2019.log>log.log

输出:

实例四:使用控制台接收字符并生成文件

输出:

[root@localhost test]# cat >log.txt <<EOF

> Hello

> World

> Linux

> PWD=$(pwd)

> EOF

[root@localhost test]# ls -l log.txt

-rw-r--r-- 1 root root 37 10-28 17:07 log.txt

[root@localhost test]# cat log.txt

Hello

World

Linux

PWD=/opt/soft/test

[root@localhost test]#

说明:log.txt要提前存在,使用$()变量,EOF 结束接收。

拓展:tac

tac (反向列示)

命令:

tac log.txt

输出:

[root@localhost test]# tac log.txt

PWD=/opt/soft/test

Linux

World

Hello

说明:

tac 是将 cat 反写过来,所以他的功能就跟 cat 相反, cat 是由第一行到最后一行连续显示在萤幕上,而 tac 则是由最后一行到第一行反向在屏幕上显示出来!

注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。为了控制滚屏,可以按Ctrl+S键,停止滚屏;按Ctrl+Q键可以恢复滚屏。按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态。

参考文章,感谢少林出身的码农:

https://www.cnblogs.com/gophper/p/4948937.html

本文分享自微信公众号 - 浩Coding(gh_c4a2e63d2ca7)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-10-14

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux命令之head和tail

    head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然就是...

    浩Coding
  • SQL语句中 where 和 on 的区别

    最近面试时候碰到一道题,关于数据库左连接和内连接中and和where的区别,网上看了看资料,加深一下印象,大家也可以看看。

    浩Coding
  • Java EE之SSM框架整合开发 -- (7) MyBatis映射器

    2.在MyBatis中针对不同的数据库软件,<insert>元素如何将主键回填?

    浩Coding
  • redo日志文件学习(22天)

    关于redo日志文件,今天因为要做redo日志的在线迁移,所以特意做了个简单的总结。 1. 如果要把redo的切换信息显示到alert日志中,需要设置个参数。...

    jeanron100
  • 【MySQL (六) | 详细分析MySQL事务日志redo log】

    为了最大程度避免数据写入时 IO 瓶颈带来的性能问题,MySQL 采用了这样一种缓存机制:

    周三不加班
  • 解构银行:从渐进式变革到彻底颠覆

    点滴科技资讯
  • 盘点全球30家顶尖金融科技创新实验室

    点滴科技资讯
  • 金融稳定理事会:加密数字资产影响未来金融稳定的潜在机制

    点滴科技资讯
  • 区块链在医疗领域的应用:短期、中期和长期

    点滴科技资讯
  • 埃森哲:2022年资本市场技术展望

    点滴科技资讯

扫码关注云+社区

领取腾讯云代金券