本文共 1063 字,大约阅读时间需要 3 分钟。
– Start
Inputgetline 读取下一行到 $0,同时设置 NF, NR, FNRgetline var 读取下一行到 var,同时设置 NR, FNRgetlinefile 输出 expr-list到文件print expr-list >> file 添加 expr-list到文件print expr-list | command 输出到管道print expr-list |& command 输出到其他进程printf fmt, expr-list 格式化打印 expr-listprintf fmt, expr-list >file 格式化打印 expr-list到文件system(cmd-line) 调用系统命令fflush([file]) 刷新缓存close(file [, how]) 关闭文件/dev/stdin 标准输入/dev/stdout 标准输出/dev/stderr 标准错误输出/dev/fd/n 文件描述符 n
下面我们看一个例子,假设有下面的文件 test.txt
test1test2inline test2.txttest4inline test3.txtdone
现在让你把包含 inline 的行替换成它后面文件中的内容,怎么办?
#! /usr/bin/awk -f{ if($0~/inline/) { fileName=substr($0, length("inline ") + 1); while ((getline newLine0) { print newLine; } close(fileName); } else { print; }}
– 更多参见:
– 声 明:转载请注明出处 – Last Updated on 2015-10-28 – Written by ShangBo on 2015-10-28 – End