【发布时间】:2011-01-12 15:08:00
【问题描述】:
在 awk 文件中,例如 example.awk,标题应该是 #!/bin/bash 还是 #!/bin/awk -f?
我提出问题的原因是,如果我在控制台中尝试此命令,我会收到带有“文本行”的正确 file.txt:
awk 'BEGIN {print "line of text"}' >> file.txt
但如果我尝试使用 ./example.awk 执行以下文件:
#! /bin/awk -f
awk 'BEGIN {print "line of text"}' >> file.txt
它返回一个错误:
$ ./awk-usage.awk
awk: ./awk-usage.awk:3: awk 'BEGIN {print "line of text"}' >> file.txt
awk: ./awk-usage.awk:3: ^ invalid char ''' in expression
如果我将标题更改为#!/bin/bash 或#!/bin/sh,它会起作用。
我的错误是什么?这是什么原因?
【问题讨论】: