私は次のスクリプトを書いた。
#!/bin/sh
expect -c "
spawn cu -l /dev/ttyUSB0 -s 115200
expect \"foo\"
send \"bar\"
"
echo $?
なしで実行すると/dev/ttyUSB0
:
$ ls /dev/ttyUSB0
ls: cannot access '/dev/ttyUSB0': No such file or directory
$ ./test.sh
spawn cu -l /dev/ttyUSB0 -s 115200
cu: open (/dev/ttyUSB0): No such file or directory
cu: /dev/ttyUSB0: Line in use
send: spawn id exp4 not open
while executing
"send "bar""
0
expect
製品を返品する理由は何ですか0
?欠陥
を検出する方法はspawn
?
答え1
あなたはテストすることができますfoo
そして eof
#!/bin/sh
expect <<'END_EXPECT'
spawn cu -l /dev/ttyUSB0 -s 115200
expect {
eof {
puts stderr "Cannot open cu"
exit 1
}
"foo"
}
send "bar"
END_EXPECT
echo $?
予想されるコードを含めるために引用した文字列を使用するよりも、ここにあるドキュメントを使用する方が簡単であることがわかりました。ここで引用された文書は、\$expect_variables
脱出について心配する必要はないことを意味します。