linux常用文字字元分割分析awk和cut命令
阿新 • • 發佈:2019-02-01
詳細文章:
由passwd檔案做示例,提取相關部分
[[email protected] 桌面]# cat /etc/passwd | head -10
root:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
awk命令
-F 指定分割字元
printf 可以指定輸出格式,print為直接列印,不能自定義格式輸出
awk後面可以直接跟檔名
[[email protected] 桌面]# cat /etc/passwd | head -10 | awk -F ":" '{printf "%s:%s\n",$1,$2}'
root:x
bin:x
daemon:x
adm:x
lp:x
sync:x
shutdown:x
halt:x
mail:x
operator:x
cut命令
-d 指定分割字元
-c和-b 提取位元組,不同的是-b可以用來提取一箇中文字元,而-c不可以,建議用-b
-f 指定提取部分
[[email protected] 桌面]# cat /etc/passwd | head -10 | cut -d : -f 1-2
root:x
bin:x
daemon:x
adm:x
lp:x
sync:x
shutdown:x
halt:x
mail:x
operator:x
[[email protected] 桌面]# cat /etc/passwd | head -10 |cut -b 1-3,5
roo:
binx
daeo
admx
lp::
syn:
shud
hal:
mai:
opea