c u t用来从标准输入或文本文件中剪切列或域。剪切文本可以将之粘贴到一个文本文件。
c u t一般格式为:
- cut [options] file1 file2
下面介绍其可用选项:
-c list 指定剪切字符数。
-f field 指定剪切域数。
-d 指定与空格和t a b键不同的域分隔符。
- c用来指定剪切范围,如下所示:
- c 1,5-7 剪切第1个字符,然后是第5到第7个字符。
-c1-50 剪切前5 0个字符。
-f 格式与- c相同。
-f 1,5 剪切第1域,第5域。
- f 1,10-12 剪切第1域,第1 0域到第1 2域。
现在从' p e r s '文件中剪切文本。
- [sam@chenwy sam]$ cat pers
- P.Jones Office Runner ID897
- S.Round UNIX admin ID666
- L.Clip Personl Chief ID982
使用域分隔符
文件中使用空格“ ”为域分隔符,故可用- d选项指定冒号,如- d " "。如果有意观察第3域,可以使用- f 3。要抽取I D域。可使用命令如下:
- [sam@chenwy sam]$ cut -d" " -f3 pers
- Runner
- admin
- Chief
剪切指定域
c u t命令中剪切各域需用逗号分隔,如剪切域1和3,即名字和I D号,可以使用:
- [sam@chenwy sam]$ cut -d" " -f1,3 pers
- P.Jones Runner
- S.Round admin
- L.Clip Chief
使用- c选项指定精确剪切数目
这种方法需确切知道开始及结束字符。通常我不用这种方法,除非在固定长度的域或文件名上。
当信息文件传送到本机时,查看部分文件名就可以识别文件来源。要得到这条信息需抽取文件名后三个字符。然后才决定将之存在哪个目录下。下面的例子显示文件名列表及相应c u t命令:
- [sam@chenwy sam]$ cat pers2
- Dept2C ID897 6 years
- Dept3S ID666 2 years
- Dept5Z ID982 1 year
- [sam@chenwy sam]$ cut -c4-8,11-12 pers2
- t2C I97
- t3S I66
- t5Z I82
要剪切谁正在使用系统的用户信息,方法如下:
- [sam@chenwy sam]$ who -u|cut -c1-8
- root
- root