awk读输入(getline)

还是按照惯例,直接上例子。

$ awk ‘BEGIN{"date" | getline d; print d}‘ datafile

Mon Jan 15 11:24:24 PST 2015

说明:将Linux的date命令通过管道传给getline函数,结果保存在变量d中并打印出来。

范例

$ awk ‘BEGIN{"date" | getline d; split(d,mon); print mon[2]}‘ datafile

Jan

说明:将Linux的date命令通过管道传给getline函数,结果保存在变量d中。split函数将字符串d拆分为数组mon。然后, awk打印数组mon的第2个元素。

范例

$ awk ‘BEGIN{printf "Who are you looking for?";\

getline name < "/dev/tty";}‘ datafile

说明:从终端/dev/tty即读取输入,保存到数组name中。

参考资料:http://www.linuxawk.com/jiaocheng/370.html

时间: 2024-11-12 15:04:34

awk读输入(getline)的相关文章

awk next以及getline用法示例

在awk中,如果调用next,那么next之后的命令就都不执行了.此行文本的处理到此结束,开始读取下一条记录并操作. 实例如下: [email protected]:~$ cat data 1000 naughty 500 cc 400 zoer 100 [email protected]:~$ awk '{if(NR==1){next} print $1,$2}' data naughty 500 cc 400 比如说我们有一个data文件,存放了每个人的出差费用.想要打印出来.但是第一行总费

关于输入getline

此函数可读取整行,包括前导和嵌入的空格,并将其存储在字符串对象中. getline 函数如下所示: getline(cin, inputLine); 其中 cin 是正在读取的输入流,而 inputLine 是接收输入字符串的 string 变量的名称.下面的程序演示了 getline 函数的应用: // This program illustrates using the getline function //to read character data into a string objec

awk——getline

A.getline从整体上来说,应这么理解它的用法: 当其左右无重定向符 | 或 < 时,getline作用于当前文件,读入当前文件的第一行给其后跟的变量var 或$0(无变量):应该注意到,由于awk在处理getline之前已经读入了一行,所以getline得到的返回结果是隔行的. 当其左右有重定向符 | 或 < 时,getline则作用于定向输入文件,由于该文件是刚打开,并没有被awk读入一行,只是getline读入,那么getline返回的是该文件的第一行,而不是隔行.下面的代码就体现了

awk getline命令解析

getline命令是我个人认为awk最强大的一个命令.因为它彻底改变了awk的运行逻辑.awk本质上就是一个for循环,它每次对输入文件的一行进行处理,然后转而执行下一行,直到整个文件的每一行都被执行完毕.整个过程是自动的,你无需做什么.但是,getline命令却可以让你去控制循环.当然,getline命令执行后,awk会设置NF,NR,FNR和$0等这些内部变量. 我们先看一个简单的例子,打印出从1到10之间的偶数: [email protected]:~/bash/awk$ seq 10 |

awk中next和getline的区别

先看下面的几行代码 [[email protected] ~]# cat a 1 2 3 4 5 6 7 8 [[email protected] ~]# awk '{print "$1="$1;getline;print "$2="$2}' a $1=1 $2=4 $1=5 $2=8 [[email protected] ~]# awk '{print "$1="$1;next;print "$2="$2}' a $1=1

AWK用法入门详解

简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本. awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK

awk 用法(自己笔记)

Table of Contents 1. awk简介 2. awk命令格式和选项 2.1. awk的语法有两种形式 2.2. 命令选项 3. 模式和操作 3.1. 模式 3.2. 操作 4. awk的环境变量 5. awk运算符 6. 记录和域 6.1. 记录 6.2. 域 6.3. 域分隔符 7. gawk专用正则表达式元字符 8. POSIX字符集 9. 匹配操作符(~) 10. 比较表达式 11. 范围模板 12. 一个验证passwd文件有效性的例子 13. 几个实例 14. awk编程

sed及awk命令的使用

sed命令 sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾.文件内容并没有 改变,除非你使用重定向存储输出.Sed主要用来自动编辑一个或多个文件:简化对文件的反复操作:编写转换程序等. 命令格式 sed [options] 'comman

awk 语法

awk的用法 a w k语言的最基本功能是在文件或字符串中基于指定规则浏览和抽取信息 调用awk 有三种方式调用a w k, 第一种是命令行方式,如: awk –F : 'commands' input-files 第二种方法是将所有a w k命令插入一个文件,并使a w k程序可执行,然后用a w k命令作为脚本的首行,以便通过键入脚本名称来调用它. 第三种方式是将所有的a w k命令插入一个单独文件,然后调用: awk –f awk-script-file input-files awk脚本