Linux 外部命令
cat
英文帮助
NAME
cat - concatenate files and print on the standard output
SYNOPSIS
cat [OPTION]... [FILE]...
DESCRIPTION
Concatenate FILE(s) to standard output.
With no FILE, or when FILE is -, read standard input.
-A, --show-all
equivalent to -vET
-b, --number-nonblank
number nonempty output lines, overrides -n
-e equivalent to -vE
-E, --show-ends
display $ at end of each line
-n, --number
number all output lines
-s, --squeeze-blank
suppress repeated empty output lines
-t equivalent to -vT
-T, --show-tabs
display TAB characters as ^I
-u (ignored)
-v, --show-nonprinting
use ^ and M- notation, except for LFD and TAB
--help display this help and exit
--version
output version information and exit
EXAMPLES
cat f - g
Output f's contents, then standard input, then g's contents.
cat Copy standard input to standard output.
AUTHOR
Written by Torbjorn Granlund and Richard M. Stallman.
REPORTING BUGS
GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Report cat translation bugs to <https://translationproject.org/team/>
COPYRIGHT
Copyright © 2018 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later
<https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent per‐mitted by law.
中文注解
cat 连接文件并在标准输出上打印
可以用它来显示文件内容,创建文件,还可以用它来显示控制字符。
cat命令的一般形式为:
cat [options] filename1 ... filename2 ...
帮助
hann@HannYang:~$ cat --help
Usage: cat [OPTION]... [FILE]...
Concatenate FILE(s) to standard output.
With no FILE, or when FILE is -, read standard input.
-A, --show-all equivalent to -vET
-b, --number-nonblank number nonempty output lines, overrides -n
-e equivalent to -vE
-E, --show-ends display $ at end of each line
-n, --number number all output lines
-s, --squeeze-blank suppress repeated empty output lines
-t equivalent to -vT
-T, --show-tabs display TAB characters as ^I
-u (ignored)
-v, --show-nonprinting use ^ and M- notation, except for LFD and TAB
--help display this help and exit
--version output version information and exit
Examples:
cat f - g Output f's contents, then standard input, then g's contents.
cat Copy standard input to standard output.
GNU coreutils online help: <https://www.gnu.org/software/coreutils/>
Report cat translation bugs to <https://translationproject.org/team/>
Full documentation at: <https://www.gnu.org/software/coreutils/cat>
or available locally via: info '(coreutils) cat invocation'
版本
hann@HannYang:~$ cat --version
cat (GNU coreutils) 8.30
Copyright (C) 2018 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Torbjorn Granlund and Richard M. Stallman.
注释
1. 如果希望显示名为myfile的文件,可以用:
$ cat myfile
2. 在使用cat命令时要注意,它不会在文件分页符处停下来;它会一下显示完整个文件。如果希望每次显示一页,可以使用more命令或把cat命令的输出通过管道传递到另外一个具有分页功能的命令中,如:
$ cat myfile | more
上面这个写法与 $ more myfile 等效
3. 参数 -n 或 -number 可以自动在每一行的显示内容前标注上行号,如:
hann@HannYang:~$ cat -n cmd1.txt
1 alias - Define or display aliases.
2 alias: alias [-p] [name[=value] ... ]
3 bg - Move jobs to the background.
4 bg: bg [job_spec ...]
5 bind - Set Readline key bindings and variables.
6 ......
4. 如果希望显示myfile1、myfile2、myfile3这三个文件,可以用:
$ cat myfile1 myfile2 myfile3
5. 如果希望创建一个名为bigfile的文件,该文件包含上述三个文件的内容,可以把上面命令的输出重定向到新文件中,这就是cat连接文件的功能:
$ cat myfile1 myfile2 myfile3 > bigfile
6. 有一点要提醒的是,如果在敲入了cat以后就直接按回车,该命令会等你输入字符。也是说帮助中说的“With no FILE, or when FILE is -, read standard input.”,没文件则从标准输入(默认设备就是键盘)中读取内容。如果你本来就是要输入一些字符,那么它除了会在你输入时在屏幕上显示以外,还会再回显这些内容;最后按<Ctrl-d>结束输入即可。
hann@HannYang:~$ cat
123456789
123456789
abcdefg
abcdefg
7. 如果希望创建一个新文件,并向其中输入一些内容,只需使用cat命令把标准输出重定向到该文件中,这时cat命令的输入是标准输入—键盘,你输入一些文字,输入完毕后按<Ctrl-d>结束输入。这真是一个非常简单的文字编辑器!
hann@HannYang:~$ cat > myfile
123456789
abcdefg
hann@HannYang:~$ cat myfile
123456789
abcdefg
上面这个功能,与Dos命令中的copy con file类似:
C:\Users\boyso>copy con myfile
123456
abcdef
^Z
已复制 1 个文件。C:\Users\boyso>type myfile
123456
abcdef
Dos系统是用<Ctrl-z>退出输出的。
完