ฉันพยายามใช้ Expect ในสคริปต์ Bash เพื่อระบุรหัสผ่าน SSH การให้รหัสผ่านใช้งานได้ แต่ฉันไม่ได้อยู่ในเซสชัน SSH เท่าที่ควร มันย้อนกลับไปสู่ Bash
สคริปต์ของฉัน:
#!/bin/bash
read -s PWD
/usr/bin/expect <<EOD
spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no usr@$myhost.example.com'
expect "password"
send "$PWD\n"
EOD
echo "you're out"
ผลลัพธ์ของสคริปต์ของฉัน:
spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no usr@$myhost.example.com
usr@$myhost.example.com's password: you're out
ฉันต้องการมีเซสชัน SSH ของฉันและเมื่อฉันออกเท่านั้นเพื่อกลับไปที่สคริปต์ Bash ของฉัน
เหตุผลที่ฉันใช้ Bash before Expect ก็เพราะว่าฉันต้องใช้เมนู ฉันสามารถเลือกหน่วย / อุปกรณ์ที่จะเชื่อมต่อได้
สำหรับผู้ที่ต้องการตอบกลับว่าฉันควรใช้คีย์ SSH โปรดงดเว้น