解释器定义中-f
的含义是什么:#!/bin/awk -f
它是一个awk
脚本
答案 0 :(得分:1)
The -f
command line option for awk
specifies that the next argument should be the file to read the commands from.
If you omit the -f
, the interpreter will try to invoke your script using /bin/awk yourScriptFile
which will fail, e.g.:
$ cat yourScriptFile
#!/bin/awk
{ print $1; }
$ ./yourScriptFile
awk: cmd. line:1: ./yourScriptFile
awk: cmd. line:1: ^ syntax error
awk: cmd. line:1: ./yourScriptFile
awk: cmd. line:1: ^ unterminated regexp
See the POSIX documentation for awk (http://pubs.opengroup.org/onlinepubs/009695399/utilities/awk.html) or man 1 awk
for details.
答案 1 :(得分:1)
答案 2 :(得分:1)
引自man awk
:
-f file程序文本是从文件而不是从命令行读取的。允许多个-f选项。
以下是一个例子:
使用-f filename
$ cat script.awk
{print}
$ awk -f script.awk <<< "abcd"
abcd
或者像这样创建一个awk可执行文件:
$ cat script1.awk
#!/usr/bin/awk -f
{print}
$ ./script1.awk <<< "abcd"
abcd