I Shell-Skript haben, wie unten:Wie übergibt man Variablen von einem Shell-Skript an ein Expect-Skript?
#!/bin/bash
echo "Select the Gateway Server:"
echo " 1. Gateway 1"
echo " 2. Gateway 2"
echo " 3. Gateway 3"
read gatewayHost
case $gatewayHost in
1) gateway="abc.com" ;;
2) gateway="pqr.com" ;;
3) gateway="xyz.com" ;;
*) echo "Invalid choice" ;;
esac
/mypath/abc
In obige Skript, ich holen Gateway von Benutzereingabe Auswahl & versucht, mein abc.sh Skript übergeben, die unter scriptshown erwarten ist:
#!/usr/bin/expect
set timeout 3
spawn ssh "[email protected]$gateway"
expect "password:"
send "TSfdsHhtfs\r";
interact
Aber ich bin nicht in der Lage Gateway Variable von Shell-Skript übergeben, um Skript zu erwarten. Kann mir jemand sagen, wie man das erreicht? Bitte beachten Sie, dass ich nur wegen legacy Gründen Shell-Skript verwenden (nicht Tcl-Skript oder kann nicht alles tun, was in erwarte Skript selbst verwenden)