/usr/bin/cut -b list [–n] [file]...
/usr/bin/cut -c list [file]...
/usr/bin/cut -f list [–d delim] [–s] [file]...
cut 从一个或多个文件中剪切字节、字符或者以字符分隔的字段,并在标准输出上将其串联起来。
option 参数列表是以逗号或空格分隔的正数和范围的列表。范围可以采用三种形式。第一种是以连字符分隔的两个正整数 (low-high),这表示从 low 到 high 的所有字段。第二种是前面带有连字符的一个正数 (-high),这表示从字段 1 到 high 的所有字段。第三种是后面跟有连字符的一个正数 (low-),这表示从 low 到最后一个字段的所有字段(包括两者)。list 中的元素可以重复,可以交迭,并且可以按任何顺序出现。输出顺序与输入顺序相同。
必须指定并且只能指定 –b、–c 和 –f 选项中的一个。
如果未指定 file 或者 file 为 -,则 cut 将从标准输入进行剪切。文件的开头被定义为当前偏移。
支持以下选项:
跟在 –b 后的 list 指定字节位置(例如,–b1-72 将传递每行的前 72 个字节)。当同时使用了 –b 和 –n 时,将对 list 进行调整以便不拆分多字节字符。
跟在 –c 后的 list 指定字符位置(例如,–c1-72 将传递每行的前 72 个字符)。
跟在 –d 后的字符是字段分隔符(仅限 –f 选项)。缺省值为 TAB。空格或者对 shell 而言具有特殊含义的其他字符必须用引号括起来。delim 可以是多字节字符。
跟在 –f 后的 list 是所采用的在文件中由某个分隔符分隔的字段的列表(请参见 –d);例如,–f1,7 将仅复制第一个和第七个字段。没有字段分隔符的行将原样传递(适合用于表格的小标题),除非指定了 –s。
不拆分字符。当同时使用了 –b list 和 –n 时,将对 list 进行调整以便不拆分多字节字符。
当使用了 -f 选项时,将抑制没有分隔符的行。除非指定本选项,否则,没有分隔符的行将原样传递。
支持下列操作数:
输入文件的路径名称。如果未指定 file 操作数或者 file 操作数为 -,则将使用标准输入。
有关 cut 遇到大于或等于 2 GB(231 字节)文件时行为的说明,请参见 largefile(5)。
下面是从用户 ID 到用户名的映射:
example% cut -d: -f1,5 /etc/passwd示例 2 设置当前登录名
将 name 设置为当前登录名:
example$ name=$(who am i | cut -f1 -d' ')
有关影响 cut 执行的以下环境变量的说明,请参见 environ(5):LANG、LC_ALL、LC_CTYPE、LC_MESSAGES 和 NLSPATH。
将返回以下退出值:
所有输入文件都已成功输出。
出现错误。
有关下列属性的说明,请参见 attributes(5):
|
grep(1)、paste(1)、attributes(5)、environ(5)、largefile(5)、standards(5)