Проблема с перенаправлением вывода ftp в SUSE Linux - PullRequest
0 голосов
/ 27 октября 2009

Я работаю в скрипте bash, где мне нужно проанализировать результаты сеанса FTP. Но я столкнулся с проблемой FTP-клиента SUSE Linux при подключении к ftp-серверу AIX. Проблема заключается в том, что выходные данные команды FTP отображаются на экране как beign, но не отправляются в канал, если выполняются команды «| grep» или «| awk». Кроме того, если я открою сеанс FTP с перенаправлением файла (ftp -n имя_сервера> ftplog.log), содержимое файла после сеанса будет выглядеть следующим образом:
FTP>
FTP>
FTP>
FTP>
Кто-нибудь сталкивался с этой проблемой? Есть ли параметр, который я пропускаю? Я попытался перенаправить стандартную ошибку на стандартный вывод, но она тоже не сработала.
Спасибо

Редактировать: Я получаю доступ к терминалу через Putty SSH, у меня нет прямого доступа к серверу. Я не думаю, что это имеет значение, но на всякий случай ...

Ответы [ 2 ]

1 голос
/ 28 октября 2009

Работает сейчас.
Мне не хватало параметра -v для FTP. Документация сбивает с толку, поскольку в ней говорится, что параметр -v является ошибкой, и он работал так, как если бы он был активирован (отображал весь вывод в терминале), но не печатал его в stdout. Когда я активировал его, каналы и перенаправление файлов начали работать.
Спасибо

0 голосов
/ 28 октября 2009

Вам нужно перенаправить stderr ПОСЛЕ stdout, как в:

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

НЕ

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