我可以从 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 运行远程命令,只需一个命令行,在脚本中非常容易。