QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1028|回复: 3

awk命令执行的难解之处

[复制链接]
发表于 2004-12-16 18:30:22 | 显示全部楼层 |阅读模式
[code:1][root@do neptune]# ll
总用量 1398244
-rw-r-----  1 oracle oinstall   1871872 12月 16 16:40 control01.ctl
-rw-r-----  1 oracle oinstall   1871872 12月 16 16:40 control02.ctl
-rw-r-----  1 oracle oinstall   1871872 12月 16 16:40 control03.ctl
-rw-r-----  1 root   root       1871872 11月 30 11:57 control04.ctl
-rw-r--r--  1 oracle oinstall  20975616 12月 16 16:40 drsys01.dbf
-rw-r--r--  1 oracle oinstall 152702976 12月 16 16:40 example01.dbf
-rw-r--r--  1 oracle oinstall 104861696 12月 16 16:40 indx01.dbf
-rw-r--r--  1 oracle oinstall  20975616 12月 16 16:40 odm01.dbf
-rw-r-----  1 oracle oinstall  36708352 12月 16 16:40 oem_repository.dbf
-rw-r-----  1 oracle oinstall 104858112 12月 16 15:43 redo01.log
-rw-r-----  1 oracle oinstall 104858112 12月 16 16:40 redo02.log
-rw-r--r--  1 oracle oinstall 377491456 12月 16 16:40 system01.dbf
-rw-r--r--  1 oracle oinstall  41947136 11月 26 15:42 temp01.dbf
-rw-r--r--  1 oracle oinstall  10489856 12月 16 16:40 tools01.dbf
-rw-r--r--  1 oracle oinstall 209719296 12月 16 16:40 undotbs01.dbf
-rw-r--r--  1 oracle oinstall 190058496 12月 16 16:40 users01.dbf
-rw-r--r--  1 oracle oinstall  47190016 12月 16 16:40 xdb01.dbf
[root@do neptune]# ll | awk 'BEGIN{ OFS="\t" }{ if (NR>1) { print $5, $NF}}'
1871872 control01.ctl
1871872 control02.ctl
1871872 control03.ctl
1871872 control04.ctl
20975616        drsys01.dbf
152702976        example01.dbf
104861696        indx01.dbf
20975616        odm01.dbf
36708352        oem_repository.dbf
104858112        redo01.log
104858112        redo02.log
377491456        system01.dbf
41947136        temp01.dbf
10489856         tools01.dbf
209719296        undotbs01.dbf
190058496         users01.dbf
47190016         xdb01.dbf
[root@do neptune]#
[/code:1]
为什么有的行Tab被显示出来,有的行Tab 没有显示出来(如,1-4)
只有在这儿才会出现这样子的问题
发表于 2004-12-16 21:26:46 | 显示全部楼层
您好,我的机器是这样显示的:
Jintao Linux >ll
总用量 36
drwxr-xr-x    2 root     root         4096 12月 14 21:51 awk
drwxr-xr-x    2 root     root         4096 12月  2 02:09 common
drwxr-xr-x    2 root     root         4096 12月  6 19:24 gpg
drwxr-xr-x    2 root     root         4096 12月 14 21:15 jintao
drwxr-xr-x    2 root     root         4096 11月 15 16:03 regularExpression
drwxr-xr-x    2 root     root         4096 12月  1 06:27 scripts
drwxr-xr-x    2 root     root         4096 12月  1 01:39 sed
drwxr-xr-x    2 root     root         4096 12月  1 07:28 test
drwxr-xr-x    2 root     root         4096 12月  1 16:33 tr
Jintao Linux >ll | awk 'BEGIN { OFS="\t" } { if(NR>1) { print $5,$NF}}'
4096    awk
4096    common
4096    gpg
4096    jintao
4096    regularExpression
4096    scripts
4096    sed
4096    test
4096    tr


GNU Awk 3.1.1
试了一下NR>1跟NR>=1,结果一样,您的这种结果,不知道,帮忙顶一下啦...
回复

使用道具 举报

发表于 2004-12-17 09:02:37 | 显示全部楼层
我的结果是
[code:1]
[tintin@totti tintin]$ ll | awk 'BEGIN{ OFS="\t" } { if (NR>1) {print $5,$NF}}'
33      append.sed
4096    bak
4096    bin
4096    c
4096    cgic
47462   cgic107.tar.gz
1005    dead.letter
4096    doc
4096    downloads
4096    evolution
21      hh
2269    jffs2.mk
12826   mbox
621     mibtree.txt
2333    mkjffs2.txt
4096    mkout
15526   mykeys.map
28      print.awk
4096    snmp
4096    test
4096    uClinux
[/code:1]
请问为什么会输出第一行,不是要判断NF大于1才执行操作吗?还有ll命令是不是
ls -l 的别名?ll在什么地方定义的?我用whereis没有找到,在/etc/bashrc中也没有找到。谢谢。
回复

使用道具 举报

 楼主| 发表于 2004-12-17 14:09:42 | 显示全部楼层
这才是第一行:
     总用量 1398244
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 16:41 , Processed in 0.038253 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表