Scripting Awk命令在csh中不工作

Scripting Awk命令在csh中不工作,scripting,awk,csh,Scripting,Awk,Csh,请让我知道以下代码有什么问题: #!/bin/csh set str = "peanut" set sr = "an" awk 'BEGIN { print index($str,$sr) }' 错误为awk:字段不正确。源行号为1。Csh不会在“单引号”中解释$variable字符串 也许最简单的修复方法是使用(GNU)Awk变量作为命令行参数: #!/bin/csh set str = "peanut" set sr = "an" awk -vstr=$str -vsr=$sr 'BEGI

请让我知道以下代码有什么问题:

#!/bin/csh
set str = "peanut"
set sr = "an"
awk 'BEGIN { print index($str,$sr) }'

错误为awk:字段不正确。源行号为1。

Csh不会在“单引号”中解释
$variable
字符串

也许最简单的修复方法是使用(GNU)Awk变量作为命令行参数:

#!/bin/csh
set str = "peanut"
set sr = "an"
awk -vstr=$str -vsr=$sr 'BEGIN { print index(str, sr)}'

当然,不要使用csh编写脚本。谷歌“csh为什么不”。