这似乎适用于我(G)awk。
#!/bin/sh
arbitrary_long_name==0 "exec" "/usr/bin/gawk" "--re-interval" "-f" "$0" "$@"
# The real awk program starts here
{ print $0 }
注意#!跑/bin/sh,所以这个脚本首先被解释为一个shell脚本。
一开始,我只是尝试"exec" "/usr/bin/gawk" "--re-interval" "-f" "$0" "$@",但是awk把它当作一个命令,无条件地打印出每一行输入。所以我才把arbitrary_long_name==0-它应该总是失败的.你可以用一些乱七八糟的字符串代替它。基本上,我在awk中寻找一个不会对shell脚本产生不利影响的假条件。
在shell脚本中,arbitrary_long_name==0定义一个名为arbitrary_long_name并将其设置为等于=0.