cut
— 列合并
cut
工具可用于从以特定字符或列号分隔的文件中提取特定列。它可以在命令行中传递文件名;如果没有指定文件名,则从标准输入读取。
cut
工具认为一行中的第一个字符的索引为 1
。 -c
、-f
和 -b
开关接受一个参数,列出所需的列。这可以是一个单一的值,也可以是一个由逗号分隔的更复杂的列表。每个值可以是一个数字,或者两个由连字符分隔的数字,表示 low-high
。如果 low
未指定,则将其视为第一列。如果 high
未指定,则将其视为“直到最后一个字符(含)”。
要从每一行中选择特定的字符,请使用 -c
开关。对于特定的字节(在使用多字节文本时与字符不同),请使用 -b
。要指定特定的字段,请使用 -f
。
使用 -f
时,可以使用 -d
开关指定字段分隔符。默认值为制表符。 -s
开关指示 cut
抑制不包含任何分隔符实例的行——默认情况下,它们会原样回显。
例如,要提取逗号分隔文件中第二、第四和第五列,忽略不包含逗号的行,可以使用
cut -s -d , -f 2,4-5 input.txt > output.txt
要从标准输入中截取第一个字符,可以使用
do_stuff | cut -c 2-
请参阅 cut(1)
手册页和 IEEE Std 1003.1-2017-cut 以获取完整文档。