我正在使用bash脚本,我需要分析FTP会话的输出。但是在连接到AIX ftp服务器时遇到了SUSE Linux FTP客户端的问题。 问题是FTP命令的输出是屏幕上显示的beign,但如果执行“|”,则不会发送到管道。 grep的"或“| AWK&QUOT ;.此外,如果我使用文件重定向(ftp -n servername> ftplog.log)打开FTP会话,会话后的文件内容是这样的:
FTP>结果 FTP>结果 FTP>结果 FTP>结果 有谁遇到过这个问题?有没有我缺少的参数?我尝试将标准错误重定向到标准输出,但它也没有用。
感谢

编辑:我使用Putty SSH访问终端,我无法直接访问服务器。我认为这不重要,但以防万一...

有帮助吗?

解决方案

现在正在运作。
我错过了FTP的-v参数。该文档令人困惑,因为它声明-v参数是dafault,并且它的工作就像它被激活(显示终端中的所有输出),但它没有在stdout中打印它。当我激活它时,管道和文件重定向开始工作。
感谢

其他提示

您需要在stdout之后重定向stderr,如:

ftp -n servername > ftplog.log 2>&1

不是

ftp -n servername 2>&1 > ftplog.log [wrong!]
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top