Правильно. Идёт на filesearch.ru (отечественный поисковик по ftp) и сам ищет и качает.
Итак, сегодня мне надоело искать что-либо в интернете самому и скачивать это ...
Держите скрипт, дающий запрос на filesearch.ru , парсящий ответ и скачивающий файл по приведённым ссылкам ...
(Просьба особо не придираться - делалось "в полёте мысли")
Usage: filesearch <filename> [regex]
filename - это файл, который мы ищем;
regex - опциональный параметр, определяющий фильтр для пути;
Environment:
FETCH - команда для скачивания (по-умолч. - wget -t 3 -c)
Примеры:
filesearch 0verkill-0.16.tgz distfiles
env FETCH='axel -a' filesearch MPlayer-1.0pre5.tar.bz2
Скрипт:
Код: Выделить всё
#!/usr/bin/perl
$file = shift;
$regex = shift || '.*';
$FETCH = $ENV{'FETCH'} || "wget -t 3 -c";
if($file) {
if(@list = `curl 'http://www.filesearch.ru/cgi-bin/s?q=$file&w=a&t=f&e=on&m=1000&o=n&s=on' 2>/dev/null | awk '/<pre class=list>/,/<\\/pre>/'`) {
foreach $line (@list) {
$line =~ /(\d+)<\/b>\s+<a[^<]*>(.*)<\/a>$/m; $size = $1; $url = $2; $url =~ s/<[^<]*>//g;
if($url && $url =~ /$regex/ && ((stat($file))[7] != $size)){
print "Fetching file 'ftp://$url' ($size bytes) ...\n";
`$FETCH ftp://$url `;
}
}
}
}