UNIX“不匹配”错误?

UNIX“不匹配”错误?,unix,shell,Unix,Shell,我正在尝试运行以下操作: x=$(echo "$1" | egrep -c "^[0-9]|[:&^]") 现在,这段代码应该查找以数字开头的单词,或者包含:、&或^。但是,在UNIX中运行此操作时,出现了一个不匹配错误。更重要的是,类似的东西在终端中运行良好,但在脚本中运行不好。试试这个 echo "$1" | nawk '{for(i=1;i<=NF;i++){ if($i ~/^[0-9]|[:&^]/ ){c++;}}}END{ print "count:"c

我正在尝试运行以下操作:

  x=$(echo "$1" | egrep -c "^[0-9]|[:&^]")
现在,这段代码应该查找以数字开头的单词,或者包含:、&或^。但是,在UNIX中运行此操作时,出现了一个不匹配错误。更重要的是,类似的东西在终端中运行良好,但在脚本中运行不好。

试试这个

echo "$1" | nawk '{for(i=1;i<=NF;i++){ if($i ~/^[0-9]|[:&^]/ ){c++;}}}END{ print "count:"c}'

你的剧本里有一句话?如何调用它?