cat - 查看与合并文件

cat 按顺序读取文件,并将内容写到标准输出。不指定文件时,它从标准输入读取。

常用参数

  • -n--number:为所有输出行编号。
  • -b--number-nonblank:只为非空行编号;与 -n 同时使用时优先。
  • -s--squeeze-blank:将连续空行压缩成一个空行。
  • -A--show-all:显示制表符、行尾和其他不可见字符。

使用示例

# 查看文件
cat file.txt
 
# 合并多个文件到标准输出
cat part-1.txt part-2.txt
 
# 显示行号
cat -n file.txt
 
# 查看不可见字符
cat -A file.txt

重定向会覆盖目标文件。不要把输入文件同时作为覆盖目标,例如 cat file.txt > file.txt,否则文件可能在读取前被清空。

# 合并后写入另一个文件
cat part-1.txt part-2.txt > combined.txt
 
# 追加内容
cat extra.txt >> combined.txt

Here-document

Here-document 是 Shell 的输入重定向语法,不是 cat 自身的参数。

cat > example.conf <<'EOF'
name=demo
enabled=true
EOF

给结束标记加引号可避免正文中的变量和命令替换被 Shell 展开。执行前应确认目标文件允许被覆盖。

参考资料