我可以从Unix shell脚本中运行sftp脚本。
但是提示输入连接服务器的密码。
如何在unix shell脚本中配置sftp命令中的密码,使文件可以在没有人为干预的情况下传输。
我的脚本如下:
/usr/bin/sftp ${USER}@${HOST} <<EOF
cd ${PATH}
mput *.csv
quit
EOF
必须在unix中生成id_rsa。
id_rsa生成脚本:
ssh-keygen -t rsa
或访问此链接:http://www.electrictoolbox.com/article/linux-unix-bsd/create-rsa-dsa-keys-ssh/
您应该使用lftp命令来代替sftp命令。使用此命令,您可以使用选项-u指定密码,并使用选项-e运行远程命令,只有一个命令行,因此在脚本中非常容易。