Shell 学习----sftp交互

sftp可以解决一个服务器与另外一个服务器的文件传输

首先sftp接续之前需要生成公钥和私钥,公钥和私钥是一种不对称的加密方式。

1.通过【ssh-keygen -t rsa】 : 生成私钥和公钥。其中【-t rsa】是rsa的加密方式。

2.按回车键继续往下执行

3.输入y,进行覆盖,然后输入密码和确认密码

4.然后在/root/.ssh的路径下回生成连个文件。id_rsa(私钥)和id_rsa.pub(公钥)。

id_rsa:本机生成的私钥复制到【sftp -oIdentityFile】进行私钥登录的路径(/share/temp)下并修改名字(id_rsa)

id_rsa.pub:从本机复制到另一台目标服务器的/root/.ssh/路径下,并把文件改名为authorized_key

5.执行 【sftp -oIdentityFile=/share/temp/id_rsa 用户名@被远程的服务器的ip】命令,该命令意味着通过私钥进行sftp登录。

# sftp login
    /usr/bin/expect -c "
    set timeout -1

    spawn -oIdentityFile=/share/temp/id_rsa 用户名@被远程的服务器的ip

    expect {
        \"Are you sure you want to continue connecting (yes/no)? \" { send \"yes\r\"; exp_continue}
        \"Enter passphrase for key*\" { send \"$passPath\r\" }
    }
    expect \"sftp>\"
    send \"cd ${path1}\r\"
    send \"get ${execDate}*.csv\r\"

    # logOut
    send \"exit\r\" 

    expect eof
    " > ${shareLog}"sftp.log" 2> ${shareLog}"sftperr.log"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值