【发布时间】:2018-05-06 15:34:42
【问题描述】:
当我将命令行参数传递给我的脚本时,我们必须使用 $1、$2 等来访问该值,同样,当我们使用 awk 时,我们可以将文件的列称为 $1、$2 等。 ,
#!/bin/bash
cat $1 | awk '$1 > 20'
- 假设我已将文件名作为命令行参数传递,我们可以使用 $1 引用该参数。
-
假设文件内容如下。
20 A 10 B 5 D 13 K 50 C
我怎么知道,当阅读这段代码时,它会访问命令行$1——输入文件名——还是cat输出的第一列?
【问题讨论】:
-
提供您的问题的更多细节
-
@anubhava,是的,当然
-
@NagaVenkateshGavini 你要澄清这个问题吗?
-
它们是两个不同的
$1,一个是shell位置参数编号1,另一个$1是AWK第一个字段。 -
@DiegoTorresMilano 是的,它们是不同的,但是当我编写脚本并在同一个脚本中使用 awk 时,我该如何区分。
标签: linux bash shell awk command-line