Linux中的cat命令连接文件并打印到标准输出设备上(通常是shell)。cat的最常见用法之一是显示文件,还可以即时创建文件,并可以直接在终端上进行基本编辑。

创建文件

使用cat命令创建文件,请在终端窗口中输入以下内容:

root@demo:~# cat demo

以这种方式创建文件时,光标将留在新行上,您可以开始键入。此技术提供了一种启动文本文件的好方法。要完成文件的编辑,请按Ctrl + D。文件将保存为您使用的文件名。

显示文件

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

root@demo:~# cat demo
demo1
demo2

要逐页查看文件,请使用more或者less命令:

root@demo:~# cat demo |more
demo1
demo2 demo3
root@demo:~# cat demo |less
root@demo:~#
显示行号

显示文件中所有非空行,使用-b参数:

root@demo:~# cat -b demo
1 demo1
2 demo2 3 demo3

显示文件中所有行,使用-n参数:

root@demo:~# cat -n demo
1 demo1
2 demo2
3
4
5
6 demo3
显示每行的结尾

有时,在解析数据文件时,程序员会发现问题,因为在行的末尾有一些意想不到的隐藏字符,例如空格,^m等此错误将阻止其解析器正常工作。

要将美元显示为行尾字符,使用-E参数:

root@demo:~# cat -E demo
demo1$
demo2$
$
$
$
demo3$
减少空行

使用cat命令显示文件的内容时,如果不希望看到负载连续的空行。使用-s关将所有空连续行压缩为一个空行:

root@demo:~# cat -s demo
demo1
demo2 demo3
显示标签

如果创建文件时使用tab,参看是看不到制表符。-T参数可以江制表符显示为^I:

root@demo:~# cat demo
demo1
demo2 demo3
demo4
demo5
root@demo:~# cat -T demo
demo1
demo2 ^Idemo3
demo4
^Idemo5
root@demo:~#
参看多个文件
root@demo:~# cat demo demo2
demo1
demo2 demo3
demo4
demo5
demo1
demo4
demo5
root@demo:~#
相反的顺序显示文件:
反序输出文件的内容,文件的最后一行显示在第一行
root@demo:~# tac demo
demo5
demo4
demo3 demo2
demo1

cat基础用法的更多相关文章

  1. find命令的基础用法以及按文件修改时间查找文件

    一般文件查找方法: find 命令学好是一件很有趣的事情,也可以帮你在查找系统文件的时候事倍功半,还可以与正则表达式结合使用,功能强大,是一个很好的查找工具.可以整体提高你的系统管理能力. 基础用法 ...

  2. Docker基础用法篇

    Docker基础用法篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装docker 1>.依赖的基础环境 64 bits CPU Linux Kerner 3.10+ ...

  3. PropertyGrid控件由浅入深(二):基础用法

    目录 PropertyGrid控件由浅入深(一):文章大纲 PropertyGrid控件由浅入深(二):基础用法 控件的外观构成 控件的外观构成如下图所示: PropertyGrid控件包含以下几个要 ...

  4. logstash安装与基础用法

    若是搭建elk,建议先安装好elasticsearch 来自官网,版本为2.3 wget -c https://download.elastic.co/logstash/logstash/packag ...

  5. elasticsearch安装与基础用法

    来自官网,版本为2.3 注意elasticsearch依赖jdk,2.3依赖jdk7 下载rpm包并安装 wget -c https://download.elastic.co/elasticsear ...

  6. BigDecimal最基础用法

    BigDecimal最基础用法 用字符串生成的BigDecimal是不会丢精度的. 简单除法. public class DemoBigDecimal { public static void mai ...

  7. Vue组件基础用法

    前面的话 组件(Component)是Vue.js最强大的功能之一.组件可以扩展HTML元素,封装可重用的代码.根据项目需求,抽象出一些组件,每个组件里包含了展现.功能和样式.每个页面,根据自己所需, ...

  8. Smarty基础用法

    一.Smarty基础用法: 1.基础用法如下 include './smarty/Smarty.class.php';//引入smarty类 $smarty = new Smarty();//实例化s ...

  9. 前端自动化测试神器-Katalon的基础用法

    前言 最近由于在工作中需要通过Web端的功能进行一次大批量的操作,数据量大概在5000左右,如果手动处理, 完成一条数据的操作用时在20秒左右的话,大概需要4-5个人/天的工作量(假设一天8小时的工作 ...

随机推荐

  1. ARTS Week 4

    标题: ARTS Week 4 分类: ARTS tags: ARTS ----------------------------------- Nov 18, 2019 ~ Nov 24, 2019 ...

  2. 使用logstash结合logback收集微服务日志

    因为公司开发环境没有装elk,所以每次查看各个微服务的日志只能使用如下命令 这样子访问日志是并不方便,于是想为每个微服务的日志都用logstash收集到一个文件out中,那以后只要输出这个文件则可查看 ...

  3. 全局new和宏结合起来的一个小应用

    #include <iostream> using namespace std; void* operator new(size_t size, const char* file, int ...

  4. 【C++】C++程序加载lib静态库

    使用Visual Studio 编写C++程序有几种配置lib的方法,以下是在代码中加载lib文件的方法: 在项目所在目录下创建文件夹lib,将lib文件此路径下,包括Debug和Release两种模 ...

  5. Gdal随笔

    开始研究遥感影像的分割,尝试去通过gdal对影像进行读取并对图像进行分割.过程中遇到了许多问题,现总结如下. 1.error1:range must be finite 报这个错误是因为数组中有Nan ...

  6. 后台+下载(wget)+多个下载url

    有时候我们需要让linux下载多个文件,并且后台下载,不去占用当前控制台. 比如我们需要下载中文维基的三个文件: https://dumps.wikimedia.org/zhwiki/latest/z ...

  7. 【转】Android WiFi 经常掉线出现的几个原因分析!

    原因1.从Log分析来看,这个是由于Dhcp request fail 导致最终disconnect . Log 分析如下: 16:53:31.659 958 6525 D NetUtils: dhc ...

  8. zabbix性能问题

    在我们的zabbixserver端主机数量过多时,如果由server端去收集数据,zabbix会出现严重的性能问题,主要的表现有: 1.当被监控端达到一个量级的时候,web操作会卡,容易出现502 2 ...

  9. 前端开发:这10个Chrome扩展你不得不知

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 原文出处:https://blog.bitsrc.io/10-top-chrome-extensions-f ...

  10. 14.git的安装使用

    目录 一.版本控制器 二.git 简介 git与svn比较 git的工作流程 版本库间的通信 git分支管理 三.git使用 流程(核心总结) 安装 基础命令 将已有的文件夹 - 初始化为git仓库 ...