Linux 终端命令之文件浏览(1) cat

简介: Linux 终端命令之文件浏览(1) cat


Linux 文件浏览命令

cat, more, less, head, tail,此五个文件浏览类的命令皆为外部命令。

hann@HannYang:~$ which cat
/usr/bin/cat
hann@HannYang:~$ which more
/usr/bin/more
hann@HannYang:~$ which less
/usr/bin/less
hann@HannYang:~$ which head
/usr/bin/head
hann@HannYang:~$ which tail
/usr/bin/tail

(1) cats

英文帮助

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:

      Report cat translation bugs to

COPYRIGHT

      Copyright   ©   2018   Free   Software   Foundation,  Inc.   License  GPLv3+:  GNU  GPL  version  3  or  later

      .

      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.”,没有文件时则从标准输入(默认设备就是键盘)中读取内容。如果你本来就是要输入一些字符,那么它除了会在你输入时在屏幕上显示以外,还会再回显这些内容;最后按结束输入即可。

hann@HannYang:~$ cat
123456789
123456789
abcdefg
abcdefg

7. 如果希望创建一个新文件,并向其中输入一些内容,只需使用cat命令把标准输出重定向到该文件中,这时cat命令的输入是标准输入—键盘,你输入一些文字,输入完毕后按结束输入。这就是一个非常简单的文字编辑器!

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系统是用退出输出的。

8.  连接多个文件时,还能用键盘输入一些内容。即是前面第6点中提到的“or when FILE is -” ,也就当文件参数有“-”减号时,就从键盘输入内容直到按结束输入。

例如以下操作,连接文件aa,bb成cc,并且两个文件间用"==========="隔开:

hann@HannYang:~$ cat aa
abcd
efg
hann@HannYang:~$ cat bb
123456
7890
hann@HannYang:~$ cat aa - bb > cc
===========
hann@HannYang:~$ cat cc
abcd
efg
===========
123456
7890

目录
相关文章
|
22小时前
|
Linux Go 数据安全/隐私保护
Linux 中的文件属性解析
在 Linux 系统中,每个文件和目录有一组属性控制其操作和访问权限。了解这些属性对有效管理文件至关重要。文件属性包括:文件类型(如 `-` 表示普通文件,`d` 表示目录),权限(如 `rwx` 表示所有者权限,`r-x` 表示组和其他用户权限),所有者,组,硬链接数,文件大小和最后修改时间。通过 `chown` 和 `chmod` 命令可更改文件所有者、所属组及权限。此外,还有特殊权限(如 SUID、SGID)和 ACL(访问控制列表)提供更精细的访问控制。
|
2天前
|
人工智能 Linux
Linux查找大文件的方法
Linux查找大文件的方法
|
4天前
|
固态存储 Ubuntu Linux
Linux(29) 多线程快速解压缩|删除|监视大型文件
Linux(29) 多线程快速解压缩|删除|监视大型文件
11 1
|
4天前
|
存储 Shell Linux
Linux(25) 如何解决Linux终端乱码问题
Linux(25) 如何解决Linux终端乱码问题
9 1
|
4天前
|
Ubuntu Linux 数据安全/隐私保护
Linux(24) 如何在Ubuntu中操作rootfs.img文件
Linux(24) 如何在Ubuntu中操作rootfs.img文件
9 0
|
9天前
|
安全 Linux 开发工具
Linux中可引起文件时间戳改变的相关命令
【4月更文挑战第12天】Linux中可引起文件时间戳改变的相关命令
18 0
|
10天前
|
Linux Shell 开发工具
Linux文件常用操作
Linux文件常用操作(几乎覆盖所有日常使用)
84 0
|
12天前
|
Linux 内存技术 Perl
【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件
【ZYNQ】制作从 QSPI Flash 启动 Linux 的启动文件
|
17天前
|
Linux
linux 超过4个G的文件传不上去的解决办法
linux 超过4个G的文件传不上去的解决办法
9 0
|
17天前
|
Linux 索引
linux 文件查找 和文件管理常用命令
linux 文件查找 和文件管理常用命令
22 0