📋 核心要点
  • cut 从每行剪切字节、字符或字段并写至标准输出,默认以制表符为分隔符
  • 三种模式:-b 按字节、-c 按字符、-f 按字段(须与 -d 配合)
  • -d 自定义分隔符;-n 仅与 -b 联用,避免切坏多字节字符
  • 不指定文件时从标准输入读取;-b/-c/-f 至少指定一个

cut 命令从文件的每一行剪切字节、字符和字段,并将这些内容写至标准输出。

基本使用

Bash
cut [-bn] [file]
cut [-c] [file]
cut [-df] [file]
  • 默认以制表符为分隔符。
  • 不指定 File 参数时,从标准输入读取。
  • 必须指定 -b-c-f 标志之一。

参数:

  • -b:以字节为单位分割(忽略多字节字符边界,除非同时指定 -n)。
  • -c:以字符为单位分割。
  • -d:自定义分隔符,默认制表符。
  • -f:与 -d 一起使用,指定显示哪个区域。
  • -n:取消分割多字节字符,仅与 -b 联用。
Bash
tttxiaoz@ThinkPad:~/shells$ cat /etc/passwd | head -n 5 | cut -b 1-3
roo
dae
bin
sys
syn

tttxiaoz@ThinkPad:~/shells$ cat /etc/passwd | head -n 5
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync

tttxiaoz@ThinkPad:~/shells$ cat /etc/passwd | head -n 5 | cut -d : -f 1,3,5
root:0:root
daemon:1:daemon
bin:2:bin
sys:3:sys
sync:4:sync