awk参数处理
来源:互联网 发布:openjdk7源码下载 编辑:程序博客网 时间:2024/05/28 05:17
awk使用ARGC和ARGV来在命令行中传入一些变量到awk脚本中。其中:
- ARGC包含传入awk脚本的参数的总数目
- ARGV为一个包含所有传入awk脚本的参数的数组,该数组下标从0到ARGC-1。
- 当你传入5个参数,ARGC的值为6
- ARGV[0]总是"awk"
下面简单的一个例子展示了ARGC和ARGV怎么工作的:
fengxi@ubuntu:~/bash/awk$ cat arguments.awkBEGIN { print "ARGC=", ARGC for(i=0;i<ARGC;i++) print ARGV[i]}fengxi@ubuntu:~/bash/awk$ awk -f arguments.awk arg1 arg2ARGC= 3awkarg1arg2在gawk中,当前正在处理的文件是存储在ARGV数组中,该数组可在循环块中被访问。ARGIND是访问ARGV数组的下标去检索当前文件。当你在awk脚本中仅仅处理一个文件时,ARGIND的值为1,并且ARGV[ARGIND]会返回当前正在处理的文件名。
下面这个例子只包含一个块,那就是打印ARGIND的值,以及得到当前文件名从ARGV[ARGIND]
{ print "ARGIND:", ARGIND print "Current file:", ARGV[ARGIND]}
fengxi@ubuntu:~/bash/awk$ awk -f argind.awk num.txtARGIND: 1Current file: num.txtARGIND: 1Current file: num.txtARGIND: 1Current file: num.txtARGIND: 1Current file: num.txtARGIND: 1Current file: num.txt其中num.txt的内容为:
fengxi@ubuntu:~/bash/awk$ cat num.txt12345如果传入不是一个文件,而是两个文件,则输出结果为:
fengxi@ubuntu:~/bash/awk$ awk -f argind.awk num.txt num2.txtARGIND: 1Current file: num.txtARGIND: 1Current file: num.txtARGIND: 1Current file: num.txtARGIND: 1Current file: num.txtARGIND: 1Current file: num.txtARGIND: 2Current file: num2.txtARGIND: 2Current file: num2.txtnum2.txt的内容为:
fengxi@ubuntu:~/bash/awk$ cat num2.txt12
0 0
- awk处理命令行参数
- awk参数处理
- awk 处理
- sed awk 传递参数
- sed awk 传递参数
- awk 传递参数
- awk命令行参数
- awk参数转义
- awk参数详解
- 向awk传递参数
- awk文本处理总结
- awk文本处理总结
- awk文本处理总结
- awk处理两则
- awk文本处理总结
- awk处理总结
- awk 多文件处理
- awk时间处理
- html5绘制基本图形-圆形
- Common Lisp入门笔记(二)赋值与输入输出
- 浅谈Python Web 安全开发
- Xcode 安装插件时Load Bundle 和 Skip Bundle 的差别
- 第n天
- awk参数处理
- 归纳总结C#中的各种定时器
- jQuery基础事件
- HDU 1179 Ollivanders: Makers of Fine Wands since 382 BC.(二分图匹配--匈牙利算法)
- Git 基础(六)—— 工作区和暂存区与 Git 对修改的管理
- 美国MTV之行
- Android studio启动时报错
- 应用层的HTTP协议
- AndroidStudio中导入jar包方法(超详细)