lsd11
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Уважаемые камрады! Есть скрипт squid2file.pl, который призван выдергивать из кэша Squid mp3 и прочие файлы для просмотра их в нормальном виде под виндой. Никак не могу его прикрутить к своему squid'у - никто не модет помочь, где и что прописать в конфиге, в каком месте? Содержание скрипта: #!/usr/bin/perl # program defaults $SAVE_DIR = "/root/sqsave"; $NAME_OFFS = 0x3C; # 0x3C for i386, 0x40 for alpha $DEBUG = 1; if (@ARGV eq '') { print("Usage: squid2file.pl <filename> [<filename> ...]\n"); exit 1; } $arch = `uname -m`; chomp $arch; if ($arch eq 'alpha') { $NAME_OFFS = 0x40; } elsif ($arch ne 'i386') { print STDERR "Warning: unknown architecture\n"; } foreach $file (@ARGV) { &extract_file($file); } exit(0); sub extract_file($) { my $infile = $_[0]; if (!open(FILE, "<$infile")) { if ($DEBUG) { print STDERR "Can not open $infile\n"; } return undef; } my $sqname = $infile; $sqname =~ s/^.*\///; binmode(FILE); seek(FILE, $NAME_OFFS, SEEK_SET); read(FILE, $data, 250); my $len = index($data, "\0"); my $url = substr($data,0,$len); my $name = $url; $name =~ s/^.*\///; # if (! ($name =~ /\.jpg$/)) { return undef; } my $pos = $len + $NAME_OFFS; seek(FILE, $pos, SEEK_SET); read(FILE, $data, 2000); $pos = index($data, "\r\n\r\n") + $pos + 4; seek(FILE, $pos, SEEK_SET); if ($DEBUG) { print "$url\n"; } my $savename = "${SAVE_DIR}/${sqname}_${name}"; if (!open(OUT,">$savename")) { close(FILE); if ($DEBUG) { print STDERR "Can not open out file $savename\n"; } return undef; } while(<FILE>) { print OUT; } close(OUT); close(FILE); return $url; } | Всего записей: 146 | Зарегистр. 29-08-2007 | Отправлено: 12:10 18-06-2009 | Исправлено: lsd11, 12:10 18-06-2009 |
|