[root@linux ~]# cut -d'分隔字元' -f fields
[root@linux ~]# cut -c 字元区间
参数∶
-d ∶后面接分隔字元。与 -f 一起使用;
-f ∶依据 -d 的分隔字元将一段讯息分割成为数段,用 -f 取出第几段的意思;
-c ∶以字元 (characters)
的单位取出固定字元区间;范例∶
范例一∶将 PATH 变数取出,我要找出第三个路径。
[root@linux ~]# echo $PATH
/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:/usr/games:
[root@linux ~]# echo $PATH | cut -d ':' -f 5
# 嘿嘿!如此一来,就会出现 /usr/local/bin 这个目录名称!
# 因为我们是以 : 作为分隔符号,第五个就是 /usr/local/bin 啊!
# 那么如果想要列出第 3 与第 5 呢?,就是这样∶
[root@linux ~]# echo $PATH | cut -d ':' -f 3,5
范例二∶将 export 输出的讯息,取得第 12 字元以后的所有字串
[root@linux ~]# export
declare -x HISTSIZE="1000"
declare -x INPUTRC="/etc/inputrc"
declare -x KDEDIR="/usr"
declare -x LANG="zh_TW.big5"
......其他省略......
[root@linux ~]# export | cut -c 12-
HISTSIZE="1000"
INPUTRC="/etc/inputrc"
KDEDIR="/usr"
LANG="zh_TW.big5"
......其他省略......
# 知道怎么回事了吧?用 -c 可以处理比较具有格式的输出资料!
# 我们还可以指定某个范围的值,例如第 12-20 的字元,就是 cut -c 12-20 等等!
范例三∶用 last 将这个月登入者的资讯中,仅留下使用者大名
[root@linux ~]# last
vbird tty1 192.168.1.28 Mon Aug 15 11:55 -
17:48 (05:53)
vbird tty1 192.168.1.28 Mon Aug 15 10:17 -
11:54 (01:37)
[root@linux ~]# last | cut -d ' ' -f 1
# 用 last 可以取得最近一个月登入主机的使用者资讯,
# 而我们可以利用空白字元的间隔,取出第一个资讯,就是使用者帐号棉!
# 但是因为 vbird tty1 之间空格有好几个,并非仅有一个,所以,如果要找出
# tty1 其实不能以 cut -d ' ' -f 1,2 喔!输出的结果会不是我们想要的。