免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: cleverd
打印 上一主题 下一主题

为什么这样可以输出awk 'BEGIN{ print "'$str'" }' str的值 [复制链接]

论坛徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亚冠之浦和红钻
日期:2015-06-23 19:10:532015亚冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16赛季CBA联赛之山东
日期:2016-01-31 18:25:0515-16赛季CBA联赛之四川
日期:2016-02-16 16:08:30程序设计版块每日发帖之星
日期:2016-06-29 06:20:002017金鸡报晓
日期:2017-01-10 15:19:5615-16赛季CBA联赛之佛山
日期:2017-02-27 20:41:19
31 [报告]
发表于 2009-03-06 12:37 |只看该作者
原帖由 cleverd 于 2009-3-6 12:14 发表

比喻的目的就是让问题变得浅显易懂,但是他的比喻反而搞复杂了...我真的看不懂他的比喻
三个人是谁? 左边是谁? 右边是谁? 脱衣服是什么意思?

awk 'BEGIN{ print "'$str'" }'

你就是$str
''就是衣服,其它的慢慢琢磨吧

p.s.如果不理解什么是配对儿可以看看A片

论坛徽章:
0
32 [报告]
发表于 2009-03-06 12:39 |只看该作者
有时间吵架还不如多看几遍书,看第1遍产生的问题,当你再看1遍的时候能解决大半

论坛徽章:
0
33 [报告]
发表于 2009-03-06 12:39 |只看该作者
awk 'BEGIN{ print "'$str'" }'

$str不是awk的变量,是shell的变量,shell用$str获得变量str的值


awk 'BEGIN{ print "'$str'" }' 其实就是
awk 'BEGIN{ print "'  $str   ' "}'

连在一起写

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
34 [报告]
发表于 2009-03-06 12:41 |只看该作者
原帖由 wtuter 于 2009-3-6 12:34 发表
学习,不管什么时侯都要保持谦虚的态度,别人是在帮你分析问题,你要知道这个贴子是你发起的,

我们水平有限,时间也有限,都在上班,不可能全部的时间都放在CU上的


赞!

论坛徽章:
0
35 [报告]
发表于 2009-03-06 12:47 |只看该作者
是shell的功能,shell对单引号和双引号,按从左到右的顺序成对匹配
awk命令用单引号引起来,就是防止shell对其中内容进行解释
awk '{print "'$str'"}' file
实际上就是2部分
1:awk ‘{print "’
2:‘"}’
即awk对2个单引号内的命令起作
至于$str就被shell正常解释为变量str的值

论坛徽章:
0
36 [报告]
发表于 2009-03-06 13:03 |只看该作者

回复 #35 cooljean2008 的帖子

受益匪浅

论坛徽章:
2
2015年迎新春徽章
日期:2015-03-03 17:33:52数据库技术版块每日发帖之星
日期:2015-09-21 06:20:00
37 [报告]
发表于 2009-03-06 13:09 |只看该作者
原帖由 waker 于 2009-3-6 11:59 发表
因为引号都是从左到右,一一配对的


啊?我一直理解从里往外配对的,my god!

论坛徽章:
0
38 [报告]
发表于 2009-03-06 13:19 |只看该作者
原帖由 cooljean2008 于 2009-3-6 12:47 发表
是shell的功能,shell对单引号和双引号,按从左到右的顺序成对匹配
awk命令用单引号引起来,就是防止shell对其中内容进行解释
awk '{print "'$str'"}' file
实际上就是2部分
1:awk ‘{print "’
2:‘"}’ ...


原来是这样...
恍然大悟,突然明白前面那么多位的回复是什么意思了...

5,9,12,15,18,19,23,33楼说的都是这个意思....为什么我就没有看明白呢....
33楼换一下就好了...
被先入为主的观念害了.....
对不起黑哥....

[ 本帖最后由 cleverd 于 2009-3-6 13:25 编辑 ]

论坛徽章:
0
39 [报告]
发表于 2009-03-06 13:30 |只看该作者
原帖由 cooljean2008 于 2009-3-6 12:47 发表
是shell的功能,shell对单引号和双引号,按从左到右的顺序成对匹配
awk命令用单引号引起来,就是防止shell对其中内容进行解释
awk '{print "'$str'"}' file
实际上就是2部分
1:awk ‘{print "’
2:‘"}’ ...



看来穿衣服的比喻很且贴A

论坛徽章:
0
40 [报告]
发表于 2009-03-06 13:31 |只看该作者
原帖由 yanjin415 于 2009-3-6 13:30 发表



看来穿衣服的比喻很且贴A

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

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP