我正在尝试将文件从远程Windows服务器复制到Unix服务器。我成功地使用命令提示符从Windows服务器复制文件,但是当我从脚本运行这些命令时,它没有按预期工作。
使用的命令:
sftp user@remoteserver.com
lcd local_dir
cd remote dir
get file_name
exit
当我从脚本运行这些命令时,脚本在连接到远程服务器后停止。
有人能告诉我如何解决这个问题。
答案 0 :(得分:1)
命令lcd
到exit
是sftp
命令,因此您不能将它们逐行写入脚本,而必须将它们重定向为sftp
s标准输入:
# all lines till "EOF" will be redirected to sftp
sftp user@remoteserver.com <<- EOF
lcd local_dir
cd remote dir
get file_name
exit
EOF
# here you are in your shell script again, eg:
SFTPRES=$?