echo cd $DEST >$DIR/$SFTP_CMD
echo put $FTP_FILE_NAME "$FTP_FILE_NAME(+1)" >> $DIR/$SFTP_CMD
echo quit >> $DIR/$SFTP_CMD
sftp -b $DIR/$SFTP_CMD $USER@$SERVER >> $LOG
通常在成功的SFTP上,"将文件上传到路径/文件"打印到stdout(在这种情况下登录)。它停止这样做了。 FTP仍在成功,但它没有打印"正在上传。*消息到stdout"。我不知道会发生什么变化会导致这种变化。有没有人面对这个?
此脚本由Informatica - 命令任务触发。唯一改变的是该工作流程已迁移到informatica 10。
答案 0 :(得分:1)
如果使用sftp
标志或-q
标志(暗示-b
)运行,则当前版本的OpenSSH -q
实用程序不会打印该消息。
我手头有一些旧版OpenSSH的源代码。在版本6.0和6.6之间的某个时间进行了禁止该消息的更改。您的Informatica更新可能还涉及对OpenSSH软件的更新,您现在正在运行较新版本的sftp
实用程序。
想到的唯一解决方案是:
sftp
或-b
-q
sftp
实用程序的足够旧副本。sftp
实用程序版本。