每天一个Linux命令(8)cat命令
cat命令连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令。
注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。为了控制滚屏,可以按Ctrl+S键,停止滚屏;按Ctrl+Q键可以恢复滚屏。按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态。
(1)用法:
用法:cat [选项] [文件]...
(2)功能:
将[文件]或标准输入组合输出到标准输出。
(3)选项参数:
1)-n, --number 对输出的所有行编号
2) -s, --squeeze-blank 不输出多行空行,有连续两行以上的空白行,就代换为一行的空白行
3) -E, --show-ends 在每行结束处显示 $
4) -b, --number-nonblank 对非空输出行编号
5) -A, --show-all 等价于 -vET,显示不可打印字符,行尾显示“$”
6) -T, --show-tabs 将跳格字符显示为 ^I
7) -v, --show-nonprinting 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外
8) --help 显示此帮助信息并退出
9) --version 输出版本信息并退出
(4)实例:
由于cat命令是查看文档的,所以首先新建文本文档test1.txt,test2.txt,test3.txt并在文档中写入内容:
方法一:
(1)首先用touch指令新建三个文档:
[sunjimeng@localhost Document]$ touch {text1.txt,text2.txt,text3.txt}
[sunjimeng@localhost Document]$ ll
总用量
-rw-rw-r--. sunjimeng sunjimeng 5月 : text1.txt
-rw-rw-r--. sunjimeng sunjimeng 5月 : text2.txt
-rw-rw-r--. sunjimeng sunjimeng 5月 : text3.txt
(2)用图形界面,打开文档输入数据:
(3)由于在CentOs里文档有自动备份的功能,因此这里有6个文档。其中带~符号的需要用查看备份的软件来打开:
(4)查看shell中的文档信息:
[sunjimeng@localhost Document]$ ll
总用量
-rw-rw-r--. sunjimeng sunjimeng 5月 : text1.txt
-rw-rw-r--. sunjimeng sunjimeng 5月 : text1.txt~
-rw-rw-r--. sunjimeng sunjimeng 5月 : text2.txt
-rw-rw-r--. sunjimeng sunjimeng 5月 : text2.txt~
-rw-rw-r--. sunjimeng sunjimeng 5月 : text3.txt
-rw-rw-r--. sunjimeng sunjimeng 5月 : text3.txt~
方法二:在shell中直接修改文档的内容:
[sunjimeng@localhost Document]$ touch text4.txt
[sunjimeng@localhost Document]$ cat >text4.txt <<EOF
> test4's first line;
> test4's second line;
> test4's third line;
> EOF
[sunjimeng@localhost Document]$ ll
总用量
-rw-rw-r--. sunjimeng sunjimeng 5月 : text1.txt
-rw-rw-r--. sunjimeng sunjimeng 5月 : text1.txt~
-rw-rw-r--. sunjimeng sunjimeng 5月 : text2.txt
-rw-rw-r--. sunjimeng sunjimeng 5月 : text2.txt~
-rw-rw-r--. sunjimeng sunjimeng 5月 : text3.txt
-rw-rw-r--. sunjimeng sunjimeng 5月 : text3.txt~
-rw-rw-r--. sunjimeng sunjimeng 5月 : text4.txt //这里并没有创建备份文件,是区别所在
[sunjimeng@localhost Document]$
1)[sunjimeng@localhost Document]$ cat -n text4.txt 将包括空行在内的各行按编号输出
[sunjimeng@localhost Document]$ cat >text4.txt <<EOF //先修改text4.txt的内容
> text4's first line
>
>
> text4's second line
>
> text4's third line
>
>
> EOF
[sunjimeng@localhost Document]$ cat -n text4.txt
text4's first line text4's second line text4's third line
2)[sunjimeng@localhost Document]$ cat -b text4.txt 将除空行在内的各行按编号输出
[sunjimeng@localhost Document]$ cat -b text4.txt
text4's first line text4's second line text4's third line
3)[sunjimeng@localhost Document]$ cat text1.txt text2.txt text3.txt 用cat命令直接输出各个文件,可以是一个也可以是多个
[sunjimeng@localhost Document]$ cat text1.txt text2.txt text3.txt
test1's first line;
test1's second line;
test1's third line;
test2's first line;
test2's second line;
test2's third line;
test3's first line;
test3's second line;
test3's third line;
4)[sunjimeng@localhost Document]$ cat text1.txt text2.txt > text5.txt 将讲text1.txt和text2.txt输出到text5.txt里,和输出到标准输出一样,也可以有-n,-b等参数
由于这个特性,cat命令可以将多个压缩包合并成一个,可以用tar命令解压
# cat test.tar.gz_?? > test.tar.gz #可以用cat命令将被切割的多个压缩包合并成一个
# tar -xvzf test.tar.gz #再用tar命令解压
[sunjimeng@localhost Document]$ cat text1.txt text2.txt > text5.txt
[sunjimeng@localhost Document]$ cat text5.txt
test1's first line;
test1's second line;
test1's third line;
test2's first line;
test2's second line;
test2's third line;
[sunjimeng@localhost Document]$
5)[sunjimeng@localhost Document]$ tac text5.txt 倒序输出文件的各行内容
[sunjimeng@localhost Document]$ tac text5.txt
test2's third line;
test2's second line;
test2's first line;
test1's third line;
test1's second line;
test1's first line;
6)[sunjimeng@localhost Document]$ cat -s text4.txt 输出文档中的内容,如果有多个空行则用一个代替
[sunjimeng@localhost Document]$ cat -s text4.txt 最多连续输出一个空行
text4's first line text4's second line text4's third line [sunjimeng@localhost Document]$ cat text4.txt 有多少空行,输出多少空行
text4's first line text4's second line text4's third line
7)[sunjimeng@localhost Document]$ cat >text6.txt 从键盘录入内容到文件,回车是保存,退出Ctrl+z
[sunjimeng@localhost Document]$ cat >text6.txt
I am MenAngel! //除了最后一个回车之后,其余回车是文档中数据的换行并保存
Practice Order!
^Z //回车后是Ctrl+Z命令退出
[]+ 已停止 cat > text6.txt
[sunjimeng@localhost Document]$ cat text6.txt
I am MenAngel!
Practice Order!
8)[sunjimeng@localhost Document]$ cat -E text4.txt 输出各行文本,并且以$符结尾
[sunjimeng@localhost Document]$ cat -E text4.txt
text4's first line$
$
$
text4's second line$
$
text4's third line$
$
$
9)[sunjimeng@localhost Document]$ cat >text6.txt <<EOF 用$取表达式的值小小范例:
[sunjimeng@localhost Document]$ cat >text6.txt <<EOF
> pwd=$(pwd)
> EOF
[sunjimeng@localhost Document]$ cat text6.txt
pwd=/home/sunjimeng/Document
10)[sunjimeng@localhost Document]$ cat --help
[sunjimeng@localhost Document]$ cat --help
用法:cat [选项]... [文件]...
将[文件]或标准输入组合输出到标准输出。 -A, --show-all 等于-vET
-b, --number-nonblank 对非空输出行编号
-e 等于-vE
-E, --show-ends 在每行结束处显示"$"
-n, --number 对输出的所有行编号
-s, --squeeze-blank 不输出多行空行
-t 与-vT 等价
-T, --show-tabs 将跳格字符显示为^I
-u (被忽略)
-v, --show-nonprinting 使用^ 和M- 引用,除了LFD和 TAB 之外
--help 显示此帮助信息并退出
--version 显示版本信息并退出 如果没有指定文件,或者文件为"-",则从标准输入读取。 示例:
cat f - g 先输出f 的内容,然后输出标准输入的内容,最后输出g 的内容。
cat 将标准输入的内容复制到标准输出。 GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
请向<http://translationproject.org/team/zh_CN.html> 报告cat 的翻译错误
要获取完整文档,请运行:info coreutils 'cat invocation'
11)[sunjimeng@localhost Document]$ cat --version
[sunjimeng@localhost Document]$ cat --version
cat (GNU coreutils) 8.22
Copyright (C) Free Software Foundation, Inc.
许可证:GPLv3+:GNU 通用公共许可证第3 版或更新版本<http://gnu.org/licenses/gpl.html>。
本软件是自由软件:您可以自由修改和重新发布它。
在法律范围内没有其他保证。 由Torbjörn Granlund 和Richard M. Stallman 编写。
每天一个Linux命令(8)cat命令的更多相关文章
- Linux命令学习-cat命令
Linux中,cat命令的全称是concatenate,主要用于显示文件内容. 查看centos系统版本 cat /etc/centos-release 查看文件 gogs.log 的内容 cat g ...
- 每天一个linux命令:cat 命令
cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 1.命令格式: cat [选项] [文件] ...
- linux常用命令:cat 命令
cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 1.命令格式: cat [选项] [文件] ...
- 全网最详细的Linux命令系列-cat命令
cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 命令格式: cat [选项] [文件].. ...
- linux常用命令(8)cat命令
cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 1 命令格式:cat [选项] [文件]. ...
- linux命令之------Cat命令
Cat命令 作用:cat命令用于连接文件并打印,查看文件内容: -n或--number:由1开始对所有输出的行数编号: -b或--number-nonblank:和-n相似,只不过对于空白行不做编号: ...
- 【Linux常见命令】cat命令
cat - concatenate files and print on the standard output cat 命令用于连接文件并打印到标准输出设备上. 用法: 1. cat file 查看 ...
- 【Linux】使用cat命令创建文本文件
在Linux界面输入 Linux:/usr/test # cat >test01.sh 接着按回车,输入内容:"echo hello world !" 回车后按 ctrl+d ...
- Centos文件切割利器_split命令及cat命令合并文件
有个文件要处理,因为很大,所以想把它切成若干份,每份N行,以便并行处理.split命令可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,为提高可读性,生成日志等 命令格式 -b:值为 ...
- Linux命令:cat命令详解
概述:查看文件内容,连接文件,重定向输出到文件 1.查看整个文件 2.cat > filename 创建文件 3.合并输出到文件 1.查看文件(单个或者多个) cat demo.txt 2.创建 ...
随机推荐
- Java注解基本介绍
注解(Annotation),又称元数据(MetaData),提供了一种在代码中添加信息的形式化的方法,将元数据和源代码结合在一起. 1. 外部配置文件如XML存在的问题: 代码复杂度较高,需要编写很 ...
- 转:HTTP协议--- multipart/form-data请求分析
转自:http://blog.csdn.net/five3/article/details/7181521 首先来了解什么是multipart/form-data请求: 根据http/1.1 rfc ...
- nodeJS 中关于 promise 的使用
var readInfo = function (fileName) { var defer = q.defer(); fs.readFile(fileName, {encoding:'utf-8'} ...
- MS coco数据集下载
2017年12月02日 23:12:11 阅读数:10411 登录ms-co-co数据集官网,一直不能进入,FQ之后开看到下载链接.有了下载链接下载还是很快的,在我这儿晚上下载,速度能达到7M/s,所 ...
- Ocelot --API网关简单使用
最近几个月一直在忙一个项目(感觉像是与世隔绝了),本来想好的是要写一些asp.net core 的一些简单使用上东西,也就放下了. 好在忙完了,也就重新开始写吧.写点什么呢?网上也有不少dotnet ...
- PHP性能之语言性能优化:vld——查看代码opcode的神器
vld介绍 vld是PECL(PHP 扩展和应用仓库)的一个PHP扩展,现在最新版本是 0.14.0(2016-12-18),它的作用是:显示转储PHP脚本(opcode)的内部表示(来自PECL的v ...
- VSCode 运行go test显示打印日志
在VSCode中运行go test,在代码中写的 fmt.Printf("TestB \n") 这些语句均不打印,只显示最终的结果 PASS ok github.com/B .03 ...
- 多媒体开发之---H264 RTSP交互过程
OPTIONS rtsp://192.168.1.154:8557/h264 RTSP/1.0 CSeq: 1 User-Agent: VLC media player (LIVE555 Stream ...
- parse arguments in bash
There are lots of ways to parse arguments in sh. Getopt is good. Here's a simple script that parses ...
- iptables启动脚本分析
#!/bin/sh # # iptables Start iptables firewall # # chkconfig: 2345 08 92 # description: Starts, stop ...