cat
cat 命令用于连接文件并显示内容到标准输出。
cat [option]... [file]...
常用选项
| 选项 | 全称 | 含义 |
|---|---|---|
-n |
--number |
显示行号 |
-b |
--number-nonblank |
对非空行显示行号 |
-s |
--squeeze-blank |
压缩连续的空白行 |
示例
创建新文件,从标准输入读取内容,直到遇到EOF。
cat > newfile.txt
复制文件内容。
cat source.txt > destination.txt
合并多个文件。
cat part1.txt part2.txt part3.txt > complete.txt
split
split 命令用于将大文件分割成多个小文件。
split [option]... [input [prefix]]
常用选项
| 选项 | 全称 | 含义 |
|---|---|---|
-d |
--numeric-suffixes |
使用数字后缀而不是字母 |
-a |
--suffix-length |
指定后缀长度 |
-l |
--lines |
按行数分割 |
示例
按行数分割文件(默认1000行)。
split -l 500 largefile.txt
使用数字后缀,并指定后缀长度。
split -d -a 3 largefile.txt
# 生成 x000, x001, x002...
tac
tac 命令是cat的反向拼写,用于反向显示文件内容(最后一行最先显示)。
tac [option]... [file]...
rev
rev 命令用于反转每行字符的顺序(每行内反向)。
rev [file]...
head
head 命令用于显示文件的开头部分。
head [option]... [file]...
常用选项
| 选项 | 全称 | 含义 |
|---|---|---|
-n |
--lines |
显示前N行(默认10行) |
-c |
--bytes |
显示前N字节 |
-q |
--quiet |
不显示文件名标题 |
-v |
--verbose |
总是显示文件名标题 |
示例
显示前N行。
head -n 20 file.txt
head -20 file.txt # 简写形式
显示除最后N行的所有行。
head -n -5 file.txt # 显示除了最后5行的所有行
tail
tail 命令用于显示文件的结尾部分,常用于查看日志文件。
tail [option]... [file]...
常用选项
| 选项 | 全称 | 含义 |
|---|---|---|
-n |
--lines |
显示最后N行(默认10行) |
-c |
--bytes |
显示最后N字节 |
-q |
--quiet |
不显示文件名标题 |
-v |
--verbose |
总是显示文件名标题 |
-f |
--follow |
实时跟踪文件变化 |
-F |
同-f,但文件被删除/重命名后会重试 |
|
--pid |
与-f一起使用,当指定进程结束时停止 |
|
-s |
--sleep-interval |
与-f一起使用,设置检查间隔(秒) |
示例
显示最后N行。
tail -n 20 file.txt
tail -20 file.txt # 简写形式
显示从第N行开始到文件末尾。
tail -n +6 file.txt # 从第6行开始显示到末尾
实现实时监控。
tail -f -s 2 logfile.log # 每2秒检查一次