0

请帮我解决这个问题。

我已经编写了一个 bash 脚本,如下所示。我的目标是从 bash 脚本中包含的期望脚本中获取返回值。

我制作的脚本如下所示。

#!/bin/bash
x=$(expect -c '
spawn ssh -o StrictHostKeyChecking=no root@10.3.2.0
expect " d: "
send "qbcrootpass\r"
expect "
#"
send "res=hello\r"
send "\$res\r"
交互
')
echo $x

但它没有像我预期的那样工作!:(

我需要做什么修改??

提前致谢。

4

1 回答 1

0

如果要获取最近退出的前台管道的退出状态,则应使用$?特殊参数

#!/bin/bash
x=$(expect ...)
y=$?
# $x now contains the output from the 'expect' command, and $y contains the
# exit status
于 2013-04-17T04:50:35.277 回答