sftp文件下载脚本

时间:2017-04-10 08:03:02

标签: bash sftp

我正在尝试从远程sftp位置下载一个,所以我使用下面的脚本。

#!/bin/bash
expect -c "
spawn sftp remoteUser@xx.xx.xx.xx
expect \"password\"
send \"User@123\r\"
interact "

问题在于远程服务器在登录服务器时配置了一些msg配置的信息,所以由于这个密码在此文本出现之前发送到屏幕上。

1 个答案:

答案 0 :(得分:2)

试试这个 -

#!/usr/bin/expect
export PASSD="User@123"
expect -c 'spawn sftp user@xxxxxx.com; 
expect "*Password: ";
send "$env(PASSD)\r";
expect "sftp>";
send "cd /home/user \r";
expect "sftp>";
send "get file.txt \r";
expect "sftp>";
send "bye \r"'