2009-10-27 104 views
0

我正在一个bash脚本中工作,我需要分析一个FTP会话的输出。但是,当连接到AIX ftp服务器时,我遇到了SUSE Linux FTP客户端的问题。 问题是,屏幕上显示的是来自FTP命令的输出,但如果执行“| grep”或“| awk”,则不会发送到管道。另外,如果我有一个文件重定向打开FTP会话(FTP -n服务器名称> ftplog.log)在会议结束后的文件内容是这样的:
FTP>
FTP>
FTP>
FTP>
有没有人遇到过这个问题?有没有我失踪的参数?我尝试将标准错误重定向到标准输出,但它也不起作用。
感谢在SUSE Linux中ftp输出重定向的问题

编辑:我访问使用腻子SSH终端,我没有对服务器的直接访问。我不认为它很重要,但以防万一...

回答

1

它现在的工作。
我缺少FTP的-v参数。该文档令人困惑,因为它指出-v参数是默认的,并且它的工作方式就好像它已被激活(显示终端中的所有输出),但它不是将它打印在标准输出中。当我激活它时,管道和文件重定向开始工作。
谢谢

+0

很好的发现!它也帮助了我。 – MicNeo 2014-11-04 13:05:03

0

您需要stderr重定向标准输出后,如:

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

ftp -n servername 2>&1 > ftplog.log [wrong!] 
+0

我试过,但它不工作。看起来输出不是通过stdout或stderr进入的,但它仍然在控制台中显示。 – 2009-10-28 12:43:53