0

我是 Expect 的新手,程序在我的机器上执行以登录远程 IBM 主机并执行脚本。但是输出不会显示在我的本地系统控制台或执行脚本的终端中。

示例代码:

expect -c "
     spawn ssh @hostname "./ibm_nettrace.sh;ls -ltr;mkdir netos;"
     expect eof
     "

在这里,shell 脚本由于文件权限而失败。但是错误不会路由到我的控制台中。

4

1 回答 1

1

我认为您需要像这样在引号内转义引号。

expect -c "
 spawn ssh @hostname \"./ibm_nettrace.sh;ls -ltr;mkdir netos;\"
 expect eof
 "

或者,通过使用这样的单引号:

expect -c '
 spawn ssh @hostname "./ibm_nettrace.sh;ls -ltr;mkdir netos;"
 expect eof
 '
于 2012-10-19T20:47:54.813 回答