SFTP 停止打印消息 "Uploading <file> to /path/to/file"
SFTP stopped printing the message "Uploading <file> to /path/to/file"
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 上,"Uploading file to path/file" 被打印到标准输出(在这种情况下是日志)。它停止这样做了。 FTP 仍在执行,但未打印 "Uploading.* message to stdout"。我不知道会发生什么变化会导致这种变化。有人遇到过这个吗?
此脚本由 Informatica - 命令任务触发。唯一发生变化的是此工作流已迁移到 informatica 10。
如果 OpenSSH sftp
实用程序的当前版本 运行 带有 -q
标志或 -b
标志(这意味着 -q
).
我手头有一些旧版本 OpenSSH 的源代码。在版本 6.0 和 6.6 之间的某个时间进行了抑制该消息的更改。您的 Informatica 更新可能还涉及对 OpenSSH 软件的更新,并且您现在 运行正在使用更新版本的 sftp
实用程序。
想到的唯一解决方案是:
- 没有那个消息就过去了。
- 避免 运行宁
sftp
与 -b
或 -q
.
- 为此,恢复到足够旧的
sftp
实用程序副本。
- 下载 OpenSSH 源代码并构建您自己的(可能经过修改的)
sftp
实用程序版本。
- 使用您选择的语言编写您自己的 sftp 客户端。大多数现代编程语言都有某种 SSH/SFTP 可用的客户端库。
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 上,"Uploading file to path/file" 被打印到标准输出(在这种情况下是日志)。它停止这样做了。 FTP 仍在执行,但未打印 "Uploading.* message to stdout"。我不知道会发生什么变化会导致这种变化。有人遇到过这个吗?
此脚本由 Informatica - 命令任务触发。唯一发生变化的是此工作流已迁移到 informatica 10。
如果 OpenSSH sftp
实用程序的当前版本 运行 带有 -q
标志或 -b
标志(这意味着 -q
).
我手头有一些旧版本 OpenSSH 的源代码。在版本 6.0 和 6.6 之间的某个时间进行了抑制该消息的更改。您的 Informatica 更新可能还涉及对 OpenSSH 软件的更新,并且您现在 运行正在使用更新版本的 sftp
实用程序。
想到的唯一解决方案是:
- 没有那个消息就过去了。
- 避免 运行宁
sftp
与-b
或-q
. - 为此,恢复到足够旧的
sftp
实用程序副本。 - 下载 OpenSSH 源代码并构建您自己的(可能经过修改的)
sftp
实用程序版本。 - 使用您选择的语言编写您自己的 sftp 客户端。大多数现代编程语言都有某种 SSH/SFTP 可用的客户端库。