欢迎光临
我们一直在努力

shell脚本自动输入用户名和密码的实现(shell脚本自动输入密码)

场景:

shell脚本中,scp和ssh连接时,自动输入用户名和密码。

解决方案:

例:

<pre
class=”brush:bash;”>#!/bin/bash
remoteIp=IP
remoteUser=用户名
remotePw=密码

function download(){
? remoteFile=$1
? localDir=$2
? expect << EOF
? ? set timeout 1200;
? ? spawn scp -r -p $remoteUser@$remoteIp:”$remoteFile” “$localDir”
? ? expect{
? ? ? “*yes/no*” {send “yes\n”;exp_continue}
? ? ? “*Permission denied*” {exit 1}
? ? ? “*password*” {send “$remotePw\n”;exp_continue}
? ? ? “*Killed by signal 1” {exit 1}
? ? }
EOF
}

fucntion remoteCmd(){
? cmd=$1
? expect << EOF
? ? set timeout 1200;
? ? spawn ssh $remoteUser@$remoteIp
? ? expect{
? ? ? “*yes/no*” {send “yes\n”;exp_continue}
? ? ? “*Permission denied*” {exit 1}
? ? ? “*password*” {send “$remotePw\n”;exp_continue}
? ? ? “*\$ ” {send “\n”}
? ? }
? ? expect “*\$ ” {send “$cmd\n”}
? ? expect “*\$ ” {send “exit\n”}
EOF
}

remoteCmd “ls -l”

<
p>到此这篇关于Shell 脚本自动输入密码的三种方式小结的文章就介绍到这了,更多相关Shell 自动输入密码内容请搜索站长源码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持站长源码网!

本文从互联网转载,来源地址:www.downzz.com/linux-shell/251593.html,原作者保留一切权利,若侵权或引用不当,请联系九八云(cmy.cn)删除。【九八云,优质云服务器提供商】

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。