等待攻戈多——awk25问……
- jioyo源
- 帖子: 3476
- 注册时间: 2008-10-08 13:48
等待攻戈多——awk25问……
这是从别的论坛发现的25个问题,发现只有题没有答案,太邪恶了……会都帮解决下……
1. awk, oawk, nawk, gawk, mawk 有什么区别?
2. 在一个 awk 文件中, 第一行可以如下吗?
#! /bin/awk -F: -f
3. awk -F"" 与 awk -F "" 有区别吗?
4. 可以这样设置 IFS 吗?
IFS = "[ \t]+\|[ \t]+"
5. gawk 有一个扩展表达式与其他 GNU 工具不同, 是哪个, 为什么?
6. 那两种方法可以实现大小写无关匹配?
答:设置IGNORECASE 或者将字符串转成大写再匹配
7. 下列两句有何区别?
awk '$0 ~ "[ \t\n]"'
awk '$0 ~ /[ \t\n]/'
8. FS=" " 和 FS=" +" 有何区别?
9. 如何将每一个字符作为一个 field ?
答:在某些awk上面可以用FS=""; 如果不支持的话就要用for(i = 1; i < length($0); i++) {$i=substr($0, i, 1);}
10. 如何将整个文件作为一个 field ?
11. RS="" 与 RS="\n\n+" 有何区别?
12. NR 和 FNR 有何区别?
答:NR:已读取的行数 FNR:当前文件已读取的行数
13. getline < "file" 改变那些 builtin 变量?
答:$n (n代表0-NF) , NF
14. 如何不打印最后一个 field? (不用循环)
答:$NF=""
15. $1 ~ /aaa/ 与 /aaa/ ~ $1 有何区别?
16. a = /a/ 是什么意思?
答:将a的值赋为match(/a/, $0);
17. awk 中的 array 可以排序吗?
答:可以,但是排序函数要自己写(百度搜索awk排序)
18. 如何将 awk 中得到的值赋给 shell 变量.
答:shell_var=`awk '{...}'`
19. 如何模拟二维数组?
答:awk二维数组只是用特殊分隔符SUBSEP分隔下标,其实是没有二维数组的
20. 你的 awk 数组最多可能的单元是多少?有限制没有?
21. 你的 awk 中 field number, record length 及 file size 有何限制?
22. awk 中如何删除 array 及 关闭管道?
答:delete array_name; close(pipe_name);
23. 如何完成 rev 功能?
24. 如何在 awk 中使用 coprocess?
答:gawk里面的|&
25. 你写过 100 行以上的 awk 程序吗?
1. awk, oawk, nawk, gawk, mawk 有什么区别?
2. 在一个 awk 文件中, 第一行可以如下吗?
#! /bin/awk -F: -f
3. awk -F"" 与 awk -F "" 有区别吗?
4. 可以这样设置 IFS 吗?
IFS = "[ \t]+\|[ \t]+"
5. gawk 有一个扩展表达式与其他 GNU 工具不同, 是哪个, 为什么?
6. 那两种方法可以实现大小写无关匹配?
答:设置IGNORECASE 或者将字符串转成大写再匹配
7. 下列两句有何区别?
awk '$0 ~ "[ \t\n]"'
awk '$0 ~ /[ \t\n]/'
8. FS=" " 和 FS=" +" 有何区别?
9. 如何将每一个字符作为一个 field ?
答:在某些awk上面可以用FS=""; 如果不支持的话就要用for(i = 1; i < length($0); i++) {$i=substr($0, i, 1);}
10. 如何将整个文件作为一个 field ?
11. RS="" 与 RS="\n\n+" 有何区别?
12. NR 和 FNR 有何区别?
答:NR:已读取的行数 FNR:当前文件已读取的行数
13. getline < "file" 改变那些 builtin 变量?
答:$n (n代表0-NF) , NF
14. 如何不打印最后一个 field? (不用循环)
答:$NF=""
15. $1 ~ /aaa/ 与 /aaa/ ~ $1 有何区别?
16. a = /a/ 是什么意思?
答:将a的值赋为match(/a/, $0);
17. awk 中的 array 可以排序吗?
答:可以,但是排序函数要自己写(百度搜索awk排序)
18. 如何将 awk 中得到的值赋给 shell 变量.
答:shell_var=`awk '{...}'`
19. 如何模拟二维数组?
答:awk二维数组只是用特殊分隔符SUBSEP分隔下标,其实是没有二维数组的
20. 你的 awk 数组最多可能的单元是多少?有限制没有?
21. 你的 awk 中 field number, record length 及 file size 有何限制?
22. awk 中如何删除 array 及 关闭管道?
答:delete array_name; close(pipe_name);
23. 如何完成 rev 功能?
24. 如何在 awk 中使用 coprocess?
答:gawk里面的|&
25. 你写过 100 行以上的 awk 程序吗?
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
- jioyo源
- 帖子: 3476
- 注册时间: 2008-10-08 13:48
Re: 等待攻戈多——awk25问……
自己先项一个……
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
- bones7456
- 帖子: 8495
- 注册时间: 2006-04-12 20:05
- 来自: 杭州
- 联系:
- jioyo源
- 帖子: 3476
- 注册时间: 2008-10-08 13:48
Re: 等待攻戈多——awk25问……
当然问了???bones7456 写了:你是想问呢?还是写教程?不明白了
是请教……
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
- hellojinjie
- 帖子: 1150
- 注册时间: 2007-09-14 21:03
- 来自: 浙江
- jioyo源
- 帖子: 3476
- 注册时间: 2008-10-08 13:48
Re: 等待攻戈多——awk25问……
米人帮我……
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
-
- 帖子: 6548
- 注册时间: 2008-10-31 22:12
- 系统: 践兔
- 联系:
Re: 等待攻戈多——awk25问……
代码: 全选
i=0
while :
do
i=$((i + 1))
echo "$i : Unknow"
if [ "$i" = "25" ] ; then break ; fi
done
代码: 全选
] ls -ld //
- bones7456
- 帖子: 8495
- 注册时间: 2006-04-12 20:05
- 来自: 杭州
- 联系:
- c\nc
- 帖子: 231
- 注册时间: 2007-12-25 12:51
Re: 等待攻戈多——awk25问……
先找个容易的?
23
awk '{for(i=length($0);i>0;i--){printf substr($0,i,1)};print ""}'
23
awk '{for(i=length($0);i>0;i--){printf substr($0,i,1)};print ""}'
- jioyo源
- 帖子: 3476
- 注册时间: 2008-10-08 13:48
Re: 等待攻戈多——awk25问……
问题是我从别的地方弄的,只有问题 没有答案,所以请教大家……是不是我的语气有什么问题 , 如果是我立马改……bones7456 写了:有你这么问的吗?
--------------------------------------
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286
论坛精华贴全集:http://forum.ubuntu.org.cn/viewtopic.php?f=48&t=199845
book:http://forum.ubuntu.org.cn/viewtopic.php?f=21&t=198286