awk与cut在以空格为分割域时的区别

 awk默认以空格为分割域,好比我想得到某进程pid:
[root@SHCTC-GAME12-44 ~]# ps -ef|grep "sshd -f"|grep -v grep
root      5088     1  0 14:28 ?        00:00:00 /usr/sbin/sshd -f /app/oslinkd/oslinkd_config

用awk以下写:
ps -ef|grep "sshd -f"|grep -v grep|awk '{print $2}'
这样便可得到pid : 5088  可是用cut,若以空格为分隔域,则并非第二个域,而是第七个域,由于root与5088之间有6个空格: ps -ef|grep "sshd -f"|grep -v grep|cut -d' ' -f7 结论: awk 以空格为分割域时,是以单个或多个连续的空格为分隔符的; cut则是以单个空格做为分隔符。
相关文章
相关标签/搜索