在 shell 脚本中,我们具有${name}
明确指定变量名称并将其与周围文本分开的构造。
在 中awk
,我可以引用$5
变量 N 指向的第五个字段 with或第 N 个字段$N
。
如果我想引用第N+1个字段怎么办?如果我使用,$N+1
我会得到第 N 个字段的内容加 1,这不是我想要的。
我可以设置另一个变量temp = N+1
然后引用$temp
,但是没有办法一次性指定“Nth plus 1”字段吗?
或者,就此而言,我可以引用函数返回 N 的第 N 个字段吗?
只需用括号将数字括起来:
$ echo 1 3 5 7 | awk '{print $(1+3)}'
7
Run Code Online (Sandbox Code Playgroud)
如果要使用某些函数计算字段编号,则根本不需要括号:
$ echo 1 3 5 7 | awk '{print $sqrt(16)}'
7
Run Code Online (Sandbox Code Playgroud)
(当然它们不痛,所以$(sqrt(16))
也有效)
归档时间: |
|
查看次数: |
235 次 |
最近记录: |