linux - 期望发送SSH

标签 linux ssh passwords send except

我只想通过ssh自动登录

当我尝试这个脚本时,用户名的输入非常有效 ..但是当脚本试图输入密码时......没有任何反应,一段时间后脚本被取消了。我已经明确地尝试了所有使用密码除外的表达式....

谁能帮帮我!?

#!/usr/bin/expect
spawn ssh admin@10.101.96.2
expect '*User: '
send "admin\r"
expect 'assword:'
send "AHSa4heL.\r"
send "show interface summary"

最佳答案

尝试以下通过expect登录到ssh

spawn bash -c "ssh user@machine"
expect "?*assword:*"
send -- "password\r"
expect "$"

其中一件事是你有 assword: 没有正则表达式说嘿期待这会说 assword: 它只说期待 assword : 所以它正在做你告诉期望做的事情。另外,如果您正在执行 user@machine,为什么必须再次输入用户名?因此,根据我的经验,您不应该期望再次输入用户名,除非自定义 ssh 登录期望发送 user

关于linux - 期望发送SSH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31676673/

相关文章:

c++ - 在不同操作系统上使用 UTF8 时的不同行为算法

Linux 函数名冲突 MATLAB

amazon-web-services - aws ec2 ssh 错误 : `ssh: connect to host x port 22: Operation timed out`

python - 使用python获取密码

c# - 无法将密码另存为哈希时该怎么办

java - OpenJDK 9 IntelliJ IDEA (Ubuntu) "Can' t 解析符号”

linux - i2c 访问用户空间问题,如何解决这个问题..?

c - 当 pthread_mutex 在线程 A 中被锁定和解锁时,为什么另一个线程 B 正在运行?

unix - 查找在特定 ssh session 或日期中创建的文件

android - 使 Android WebView 不存储 cookie 或密码