everyday:linux cat

字数 177阅读 121

everyday:linux cat

[TOC]

功能说明

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

命令详解

  1. 命令格式
    cat [选项][文件]...
  2. 命令功能
    • 一次显示整个文件 cat filename
    • 从键盘创建一个文件 cat > filename,只能创建新文件,不能编辑已有文件
    • 将几个文件合并为一个文件 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 之外
  1. 举例
    • eg1 把 file1 的文件内容加上行号后输入 file2 文件里
    cat log.log
  cat -n log20.log > log.log
  cat -n log.log
+ eg2 把 file1 和 file2 的文件内容加上行号(空白行不加)之后,将内容附加到 file3 里
  cat -b log20.log log21.log > log.log
+ eg3 `cat > or >> filename`
  // 重新编辑文件内容
  cat > log.log
  // 在文件时继续添加内容
  cat >> log.log
+ eg4 使用here doc来生成文件
    cat > log.txt <<EOF
    > Hello
    > World
    > Linux
    // here doc可以进行字符串替换
    > PWD=$(pwd)
    > EOF

    ls -l log.txt
    cat log.txt
  1. 备注
    // tac 反向显示,是将 cat 反写过来,所以功能跟 cat 相反,cat 是由第一行到最后一行连续显示在屏幕上,而 tac 则是由最后一行到第一行反向在屏幕上显示出来
  tac log.txt

推荐阅读更多精彩内容