永发信息网

linux expect 如何输出结果到屏幕

答案:2  悬赏:20  手机版
解决时间 2021-03-08 01:22
  • 提问者网友:最爱你的唇
  • 2021-03-07 20:46
linux expect script ,

send "pwd\n\r"
但是结果无法看到,我怎么能让 send 命令返回结果,在屏幕上显现
最佳答案
  • 五星知识达人网友:低血压的长颈鹿
  • 2021-03-07 21:45
使用send_user,输出是stdout。
全部回答
  • 1楼网友:duile
  • 2021-03-07 22:58
#!/usr/bin/expect set timeout 10 set host_ip [lindex $argv 0] set password [lindex $argv 1] spawn ssh ${host_ip} expect { "(yes/no)?" { send "yes\n" expect "*assword:" { send "$password\n"} } "*assword:" { send "$password\n" } timeout {exit 1} # 3: 这里超时就会返回 1 } expect "100%" # 1: 等待 被spawn的程序(即前面的 ssh ${host_ip})输出 100% expect eof # 2: 等待被spawn的程序结束 4: 可能是 ssh 本身慢导致的
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯