[Moscow.pm] Net::FTP, FTP Transfer Status, $ftp->hash , фильтрация STDOUT - как получить число вместо решёток?

Dmitry Arsentiev dmarsentev на gmail.com
Ср Янв 12 06:28:08 PST 2011


Олег, спасибо за реакцию

> Как оно работает, в том числе для виндовса, можно глянуть,
> например, в TAP::Parser::Iterator::Process.

Проблема не в том, чтобы пропарсить, а в том,
чтобы пропустить STDOUT через фильтр,
считающий решёток.

Вот этот вот STDOUT хотел бы отфильтровать:
$ftp->hash(\*STDOUT, $BYTES_PER_HASH);


> Есть еще core модули IPC::Open2, IPC::Open3.
Да, но они предназначены для работы c внешними командами:
$pid = open2(\*CHLD_OUT, \*CHLD_IN, 'some cmd and args');

Наверное можно как-то fork-нутый процесс ему просунуть вместо  'some
cmd and args',
но не могу сообразить, как это сделать и, честно говоря, устал голову ломать.
Мне изначально надо было строку статуса ftp-загрузки файла получить.
Модуль Net::FTP красиво решить этот вопрос под windows не позволяет.
Под unix-ом, наверное, можно сделать строку статуса сравнительно просто.


Вобщем, спасибо всем, я сдался, решил обойтись без статуса загрузки.


12 января 2011 г. 15:49 пользователь Oleg Alistratov <ali на ali.org.ua> написал:
>
>
> On 12.01.2011 14:27, Dmitry Arsentiev wrote:
>
>>> http://www.google.ru/search?hl=ru&q=windows+perl+pipe+fork
>>>
>>> А тут есть примерчик того, как можно эмулировать open('-|'):
>>>  http://perldoc.perl.org/perlfork.html
>
> Есть еще core модули IPC::Open2, IPC::Open3.
>
> Как оно работает, в том числе для виндовса, можно глянуть,
> например, в TAP::Parser::Iterator::Process.
>
> Не буду углубляться в проблему парсенья решеток %)
> но ведь TAP::Parser решает подобную задачу.
> Так что я бы пристально его изучил.
>
> --
> Олег Алистратов
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>


Подробная информация о списке рассылки Moscow-pm