awk 脚本 - ARGV

Awk script - ARGV

我正在尝试打印我在调用程序时输入的第一个参数,但它不起作用。 有什么帮助吗?

#!/bin/bash -f
awk '
    BEGIN{
        print "argc: "ARGC
        print "argv0: "ARGV[0]
        print "argv1: "ARGV[1]      
    }
'

运行 使用:./progName.awk "data"

但 'data' 未显示。

将最后一行更改为:

' "$@"

现在您没有将任何参数传递给 awk。

不相关,不会更改任何功能,但会将脚本的名称从 ./progName.awk 更改为 ./progName.sh 或类似名称,因为它不是 awk 脚本,它是 shell 脚本这恰好调用 awk 来执行 awk 脚本。您可以将 awk 脚本替换为 perl 或 ruby 或其他任何内容,这不会改变您所拥有的是可执行的 shell 脚本这一事实。