Nicole, você poderia rodar o seguinte comando, e postar o output? curl -Ivx 10.46.10.19:3129 ftp://hgdownload.cse.ucsc.edu/goldenPath/ce4/database/all_est.txt.gz | awk '/Content-Length:/ {print $2}'
ABS() 2013/3/8 Nicole Scherer <[email protected]> > Oi Mongers, > > venho humildemente consultar o vasto conhecimento de vocês em prol da > pesquisa científica. > > Preciso consultar o tamanho de um arquivo em um servidor ftp, antes de > decidir se o arquivo deverá ou não ser baixado. > Eu estava usando o LWP::Simple::head($url) para isto, e estava funcionando > bem, até eu ter que usá-lo através de um proxy. > O que acontece é o seguinte, usando sem proxy, eu consigo acessar as > informações sobre tamanho, formato, codificação, etc, > > > my $downloadfile = " > ftp://hgdownload.cse.ucsc.edu/goldenPath/ce4/database/all_est.txt.gz"; > my ($content_type, $document_length, $modified_time, $expires, $server) = > LWP::Simple::head($downloadfile); > > --- ou > > if (my $res = LWP::Simple::head($downloadfile)) { > print "$downloadfile ok\n"; ### debug > p($res->{_headers}); > } else { > print "$downloadfile not available\n"; ### debug > } > > > --- e quando uso > > use LWP::Simple qw($ua head); > $ua->proxy([qw(http ftp wais)], 'http://10.46.10.19:3129'); > > para definir o proxy, ele não retorna estas informações. > > > Se eu mandar imprimir $res->{_headers}, tenho isso: > > --- rodando sem proxy > > HTTP::Headers { > public methods (38) : as_string, authorization, authorization_basic, > clear, client_date, content_encoding, content_is_html, content_is_text, > content_is_xhtml, content_is_xml, content_language, content_length, > content_type, content_type_charset, date, expires, from, header, > header_field_names, if_modified_since, if_unmodified_since, init_header, > last_modified, new, proxy_authenticate, proxy_authorization, > proxy_authorization_basic, push_header, referer, referrer, > remove_content_headers, remove_header, scan, server, title, user_agent, > warning, www_authenticate > private methods (5) : _basic_auth, _date_header, _header, > _process_newline, _sorted_field_names > internals: { > client-date => "Fri, 08 Mar 2013 19:33:58 GMT", > client-request-num => 1, > content-encoding => "gzip", > content-length => 14169205, > content-type => "text/plain", > last-modified => "Mon, 14 Mar 2011 16:52:05 GMT", > server => "FTP Server" > } > } > > > > --- com proxy > HTTP::Headers { > public methods (38) : as_string, authorization, authorization_basic, > clear, client_date, content_encoding, content_is_html, content_is_text, > content_is_xhtml, content_is_xml, content_language, content_length, > content_type, content_type_charset, date, expires, from, header, > header_field_names, if_modified_since, if_unmodified_since, init_header, > last_modified, new, proxy_authenticate, proxy_authorization, > proxy_authorization_basic, push_header, referer, referrer, > remove_content_headers, remove_header, scan, server, title, user_agent, > warning, www_authenticate > private methods (5) : _basic_auth, _date_header, _header, > _process_newline, _sorted_field_names > internals: { > client-date => "Fri, 08 Mar 2013 19:36:13 GMT", > client-peer => "10.46.10.19:3129", > client-response-num => 1, > connection => "close", > date => "Fri, 08 Mar 2013 19:35:52 GMT" > } > } > > > > Ele simplesmente não cria/recebe content-encoding, content-length, > content-type, last-modified e server. > Só o que eu preciso mesmo é o content-length. > > By the way, o LWP::UserAgent head() não me informa o tamanho do arquivo. > Pelo menos não nos meus testes. > > Vocês conhecem alguma outra maneira de obter a informação de tamanho do > arquivo sem ter que baixá-lo? > Acessando o directory listing também não dá, porque através do proxy, o > formato que ele retorna varia em cada sistema (pelo menos foi o que eu > observei. me corrijam se eu estiver errada). > > > Obrigada! > > Abraços, > Nicole > > > > > _______________________________________________ > Rio-pm mailing list > [email protected] > http://mail.pm.org/mailman/listinfo/rio-pm >
_______________________________________________ Rio-pm mailing list [email protected] http://mail.pm.org/mailman/listinfo/rio-pm
