awk引用外部变量

栏目: 服务器 · 发布时间: 7年前

内容简介:=增加了自己的例子.实际应用:

=

对引用的文做了格式修改和字符串修正。

增加了自己的例子.

实际应用:

比如我的脚本如下:

awk -F"," '{if($4 > _max_exe_time_) print $4","$0}'  _max_exe_time_=$_max_exe_time_ My-File.txt

=

awk引用外部变量

from:

http://www.cnblogs.com/mydomain/archive/2012/09/24/2699467.html

https://blog.csdn.net/wangweiran1/article/details/38272797

一、用 awk  有以下几种方法去调用变量:

1.  awk '{print a, b }' a=111 b=222 yourfile

注意 变量位置要在  file  名之前 否则就不能调用。

还有 BEGIN{} 中是不能调用这些的 variable.  要用之后所讲的第二种方法才可解决 .

2.  awk - v a=111 - v b=222 '{print a,b }' yourfile

注意 对每一个变量加一个 - 作传递

3.  awk '{print " ' "$LOGNAME" ' "}' yourfile  (这种方法比较雷,一般不用了)

如果想调用 environment variable,  要用以上的方式调用 方法是 :

"  '  "  $LOGNAME  "  '  "

原文:

awk 如何引用外部变量

http://hi.baidu.com/icqncvjhgmbbsyq/item/02ef096ac1d49c94c5d2495a

二、进一步解释

3 种方法为什么要加两个双引号和一个单引号?

$ str=Hello

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

Hello

看上去是双引号套单引号,其实真正的原因为:

这是 shell 的功能, shell 对单引号和双引号,按从左到右的顺序成对匹配

awk命令用单引号引起来,就是防止 shell 对其中内容进行解释

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

实际上就是 2 部分

1:awk '{print " '

2:'"}'

awk 2 个单引号内的命令起作用。

至于 $str 就被 shell 正常解释为变量 str 的值。

所以,如果 str=hello ,则经解释后成为, awk {print "hello"}file

而如果 str=hello world ,则解释时,在解释前一部分: awk {print "  后,在替换了变量后,变成了 hello world ,当 shell 读到 hello world 中间的空格时,认为这是 IFS ,于是,把他们放在于不同的域中,这样解释成了:

awk BEGIN{print "hello

world"} 两部分。

按照上面的解释,就可以这么来修改,比如

a)$ awk 'BEGIN{print " ' "$a" ' "}'

或者

b)$ awk "BEGIN{print \"$a\"}"

或者

c)$ awk BEGIN\{print\""$a"\"\}

对于 a ,解释成为:

awk BEGIN{print "hello world"} #因为 $a 在替换后,还在“”中包括中,所以当成了一个字符串处理。

三、总结

awk怎么说也是要运行在 shell 环境中的。所以,写在 awk 中的命令,要先经过 shell 解析后,再交由 awk 来解释和执行。

原文:

awk 引用外部变量

http://hi.baidu.com/liheng_2009/item/6466a4c0e087222447d5c0c8

以下两个链接给了更多的讨论:

http://www.linuxsir.org/bbs/thread121709.html

http://bbs.chinaunix.net/thread-1381166-1-1.html

=

=

=


以上所述就是小编给大家介绍的《awk引用外部变量》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Design Accessible Web Sites

Design Accessible Web Sites

Jeremy Sydik / Pragmatic Bookshelf / 2007-11-05 / USD 34.95

It's not a one-browser web anymore. You need to reach audiences that use cell phones, PDAs, game consoles, or other "alternative" browsers, as well as users with disabilities. Legal requirements for a......一起来看看 《Design Accessible Web Sites》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具