Jahid
Jahid

Reputation: 22428

How to check if a variable is set in expect script?

I am doing something like this:

#!/usr/bin/expect -f

if {$out != ""} {
  send_user $out
}

But it doesn't work. Error message:

can't read "out": no such variable
    while executing
"if {$out != ""} {
send_user $out
}"
    (file "./test" line 3)

Upvotes: 9

Views: 21843

Answers (1)

Dinesh
Dinesh

Reputation: 16428

The error you got is because of non-existence of the variable out.

To check variable's existence, use the following

if {[info exists out]} {
    puts "variable does exist"
}

info exists returns 1 if variable exist, else 0.

If variable exists, then you can use the code what you posted.

Upvotes: 20

Related Questions