Shell Scripting:无法scp输出到日志文件

时间:2011-11-09 12:47:00

标签: perl scripting scp

在我的Shell脚本中我试图将scp输出推送到日志文件。下面是代码片段。在命令行中我可以看到日志但是scp日志没有被推入文件。这可能是什么原因?

FTP_LOG = "Log.txt"
scp -v ${feedFile} ${USER}@${DESTINATION}:inbox >> ${FTP_LOG}

请帮助我,因为我可以看到有其他人在谷歌时遇到同样的问题。

另一个问题是scp命令之后的最后一个返回代码并没有真正说明文件传输是否成功。即使文件传输失败,我也会获得最后一个返回代码作为指示成功。

2 个答案:

答案 0 :(得分:4)

-v输出到STDERR而不是STDOUT。您希望2>>不是>>

答案 1 :(得分:0)

最好的aproch恕我直言,将stdout和stderr重定向到2个文件中,如下:

ftp_log=log
ftp_error_log_err_log
scp -v "$feedFile" $USER@${destination}:inbox > "$ftp_log" 2> "$ftp_error_log"