如何在expect shell脚本中验证输入参数的数量?

时间:2016-08-10 14:08:54

标签: shell unix expect

我试图验证我创建的shell脚本中的参数数量 该脚本将使用expect。

错误

invalid command name "$#"
    while executing
"$# -ne 3 "
    invoked from within
"if [ $# -ne 3 ] then"

脚本:

#!/usr/bin/expect -f
if [ $# -ne 3 ] then
   echo "Wrong number of arguments provided"
   echo "fgrep_host.sh hostname filter_text new_file"
   exit
fi

1 个答案:

答案 0 :(得分:2)

正如@Dinesh所说,expect脚本是一个shell脚本,它是一个expect脚本,Tcl。< / p>

要做你想做的事,你要写下来:

#!/usr/bin/expect -f
if {$argc != 3} {
  puts "Wrong number of arguments provided"
  puts "fgrep_host.sh hostname filter_text new_file"
  exit 1
}

虽然你不应该添加.sh扩展名

您必须继续阅读expectTcl才能继续阅读。