如果您的Expect和Send命令在Bash或Shell脚本中无法正常工作,那么可能是由于以下原因。
Expect和Send命令没有正确安装。确保您已经正确安装了expect和send。
无法定位Expect二进制文件。在脚本中使用Expect命令时,请确保已经指定了正确的路径。在以下示例脚本中,Expect命令使用/usr/bin/expect路径指定。
#!/bin/bash
/usr/bin/expect <
#!/bin/bash
spawn ssh user@host
expect "password:"
send "password\n"
expect "$"
spawn ls -l
expect "$"
send "exit\n"
通过使用spawn命令,脚本将在每个Expect命令之间运行一个新的子进程。这将确保每个Expect命令都在单独的环境中运行,无法相互干扰。
这些是您可以尝试的几种解决方法,以确保您的Expect和Send命令在Bash或Shell脚本中正常工作。