ChinaUnix.net
相关文章推荐:

awk $NF

本帖最后由 hover_sky 于 2010-12-16 14:40 编辑 cat text.tx[code] dd df ff 1 2 3 hellow world 4 5 6 ddd ff ddddd ffffffff 7 8 9 kk jj kk 6 8 9 9 [/code]awk '{print $nf;}' test.txt[code] 3 6 9 9 [/code]如果我要打印倒数三项,如果表述?即要如下结果:[code] 1 2 3 4 5 6 7 8 9 8 9 9 [/code]

by hover_sky - Shell - 2010-12-16 20:37:13 阅读(4222) 回复(14)

相关讨论

又record 如下 -181 -13 kcg_true -181 kcg_true 1 kcg_true '~' ' ' 3 11 kcg_true -17 kcg_true -13 kcg_true '~' 'A' 7 181 kcg_true -17 kcg_true 181 kcg_true ' ' 'x' -181 -181 kcg_true 11 kcg_true -181 kcg_true 'A' 'x' ... 它们的nf的相等的; 但是我做[[ fieldNum == nf ]]会得出不相等 引起的原因是 ‘ ’中的空格也被当作FS了 怎么解决 让awk 判断出这些record的nf是相等的

by luyi1983 - Shell - 2009-09-01 01:46:27 阅读(2029) 回复(7)

nf:浏览记录的域个数。 nf:number of fields in the current record 照以上理解 $pwd /usr/local/etc $echo $PWD|awk -F/ '{print $nf}' etc $echo $PWD|awk -F/ '{print $nf}'应该显示域个数3才对啊。为什么会显示文件名etc呢?

by 朽木可雕 - Shell - 2004-03-07 21:19:47 阅读(1528) 回复(3)

awk -F "\033" '{print $nf}' FILENAME命令,可以取出以八进制033为分符隔的文本的最后一列, 但是如果文件里含有CHAR(0)字符,则有问题。 比如: echo "a\033\000b\000c\033\d">t awk -F "\033" '{print $nf}' t 得到的结果不是d 请教大牛,awk的具体实现是怎样的,为什么这里有问题? 谢啦!

by 玉壶公子 - Shell - 2013-05-08 09:50:16 阅读(1297) 回复(2)

本帖最后由 General_715 于 2012-03-15 13:22 编辑 初学awk 遇上个问题 请大家指教一下 $ cat grade.txt M.Tans 5/99 48311 Green 8 40 44 J.Lulu 06/99 48317 green 9 24 26 P.Bunny 02/99 48 Yellow 12 35 28 J.Troll 07/99 4842 Brown-3 12 26 26 L.Tansl 05/99 4712 Brown-2 12 30 28 ———————————————————————————————————————— awk ‘{print $nf}’grade.txt 7 7 7 7 7...

by General_715 - Shell - 2012-03-16 16:35:12 阅读(6694) 回复(7)

测试文件uu内容如下 1 q 2 3 4 e 5 用 awk '$nf{print $0}' uu结果为 1 q 2 3 4 e 5 用 awk '!$nf{print $0}' uu 运行结果为空 但是我用 awk '!$2{print $0}' uu结果为 2 3 5 用$nf和$2为什么不一样? ( awk '{print $nf;}' uu q 2 3 e 5 [root@localhost opt]# awk '{print nf;}' uu 2 1 1 2 1 )

by laohuanggua - Shell - 2010-03-26 21:07:04 阅读(12875) 回复(19)

BEGIN { FS="," chg_str="IP," if (length(des_ip) > 0){ ipaddr=des_ip } else { ipaddr="10.10.5.44" } } { #print "nf => " nf #print "nf => " $nf if ( NR == 1) { printf "%s",chg_str print $0 } else { printf "\"%s\",",ipaddr #print "nf => " nf for (i = 1; i <= nf; i++){ printf "%s",$i } #print $0 print "NR => " NR } } 程...

by yourkeychen - Shell - 2007-12-14 21:47:23 阅读(8175) 回复(12)

awk 'nf 3 { print $0 }' /tmp/A /tmp/B #把A文件中字段数=3 的记录的第一个字段显示出来并保存到B文件?#

by marsoo - Shell - 2003-11-13 14:09:02 阅读(6989) 回复(12)
by ABAP/4 - Shell - 2015-04-06 03:57:56 阅读(9456) 回复(9)

本帖最后由 royzs 于 2011-10-25 10:13 编辑 netstat -n|awk '/^tcp/{++S[$nf]} END {for(a in S) print a,S[a]}' 这都什么啊,我一句都读不懂,哪位细心又高才的大大帮忙解释解释,感激不尽

by royzs - Shell - 2011-09-29 16:18:35 阅读(9246) 回复(7)

按照awk的使用手册,nf代表Number of fields in current record 但是下面 有这样一个文件: -bash-3.00$ cat testfile hz:zj wh:hb:zh 下面命令的输出为空: -bash-3.00$ cat testfile | awk -F: '/nf>2/ {print $3}' -bash-3.00$ 下面却又可以: -bash-3.00$ cat testfile | awk -F: '{if (nf > 2) print $3}' zh -bash-3.00$ 请问是为什么?谢谢!

by rc_hz - Shell - 2009-11-02 18:15:07 阅读(1513) 回复(5)