在awk中执行shell , 返回0:成功
1. result= system("shell cmd")
调用shell来获取值 并赋值给变量
2.
"shell cmd" |getline valueaa ; print valueaa
"shell cmd" |getline ; print $0 -->如果不加变量名, 则 $0
其它更多
http://www.cnblogs.com/chengmo/archive/2010/10/08/1845913.html
以下摘录自 http://blog.sina.com.cn/s/blog_3ef3b17a0100dzw0.html
1 getline
通过在awk内使用管道,可以把shell命令的输出传送给awk
$ awk 'BEGIN{ "date" | getline date; print date; }' Sun Mar 8 22:21:52 2009
|
顺便说一下getline的其他用法.
getline除了可以通过管道从shell命令里读取数据外,它还可以从标准输入(用"-"指定从标准输入读入,或者如果命令行没有任何输入文件且不用重定向符"<"指定文件,默认也是从标准输入读)和文件里读取数据;如果getline后面没有指定变量,则读取的数据会放到$0里面
$ awk 'BEGIN{ getline; print $0 }' hello, for note <==这一行是从键盘输入的 hello, for note <==这一行是awk的print $0 输出的
$ cat sed.test hello
$ awk 'BEGIN{ getline < "sed.test"; print $0 }' hello
$ awk 'BEGIN{ getline < "-"; print $0 }' hello hello
|
如果读取成功,getline返回1;如果读到文件结束符,getline返回0;如果发生错误,例如打不开文件,getline返回-1. 所以,getline可以用于while循环中
$ cat grep.test hello myboy third fourth
$ awk 'BEGIN{ while( getline line < "grep.test" ){ print line } }' hello myboy third fourth
|
分享到:
相关推荐
把实际应用中一些常用的awk的用法进行了总结,包括多文件操作,与shell之间的相互调用等
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
这是一个类似于rust属性的proc宏,它减少了调用Shell命令和解析结果所需的代码量。 它使您可以使用具有强类型功能的任何语言包装脚本。 该函数的参数设置为env变量,脚本的结果解析为值或迭代器。 例子 基本的 use ...
前言 10 场景说明 11 基础知识简介 14 Linux 14 Linux产生与发展 14 Linux特点和优势 15 ...2.Shell文件和解释器调用 295 3.环境 296 4.注释 296 5.格式 298 6.特性及错误 304 7.命名转换 308 8.调用命令 311
环境:linux 优点:可分析大日志,大量文件,避免java分析大日志的数据量过... 高效,调用linux shell预筛选,不需加载日志加载的jvm内存。 快速,2-3G的文件可在几十秒内完成筛选,相对java代码分析日志速度明显提升。
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
1.3 AWK的调用方式......................................................................................................................6 1.4 AWK的语法:..................................................
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
若你使用过 Shell 中的 awk 工具,会发现用它来分割字符串是非常方便的。特别是多个连续空格会被当做一个处理。 [root@localhost ~]# cat demo.txt hello world [root@localhost ~]# [root@localhost ~]# awk ...
system()的结果是直接返回给shell显示了,然后再由awk继续执行后面的程序,这种情况下,if()里留下的其实是system()的执行状态【即0或1】”0”~/^[2 3]/,当然就一直执行else了
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...
9.1 调用awk 66 9.2 awk脚本 67 9.2.1 模式和动作 67 9.2.2 域和记录 67 9.2.3 awk中正则表达式及其操作 70 9.2.4 元字符 70 9.2.5 条件操作符 70 9.2.6 awk内置变量 73 9.2.7 NF、NR和FILENAME 74 9.2.8 awk操作符 ...