Schrift
[thread]12695[/thread]

Hilfe gesucht - Datei auslesen / download / bz2 entpacken (Seite 2)

Leser: 3


<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten
renee
 2008-11-14 15:20
#116254 #116254
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Hinter my $list = ... (siehe mein Post)
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
Linuxer
 2008-11-14 15:28
#116255 #116255
User since
2006-01-27
3875 Artikel
HausmeisterIn

user image
Hi,

Quote
my $unzip='/bin/bunzip2';


Was soll dieser Pfad auf einem WinDOS System? Fehlt da ein "C:" am Anfang?
Wenn es kein WinDOS ist, dann wundern mich die Pfade zuvor, die mit "C:/" beginnnen....
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!
topeg
 2008-11-14 15:30
#116256 #116256
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Etwas ausführlicher:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/perl

use strict;
use warnings;
use LWP::Simple;

my $pfad='C:/Perl/eg/'; # < Das "/" am Ende ist wichtig, sonst funktioniert der Pfad unten nicht.
my $liste='C:/Perl/eg/meineliste.txt'; # < Semikolon vergessen

# Programm zum entpaken der bzip2-komprimierten Dateien
# sollteste du installieren, oder etwas anders nutzen.
my $unzip='/bin/bunzip2'; # < Das ist ein Programm, ich glaube nicht, dass es so gefunden wird

open(my $fh, '<', $liste) or die "Fehler bei open $liste ($!)\n"; # < immer den Fehlergrund mit ausgeben
while(my $url=<$fh>){
  chomp($url);
  my ($file)=$url=~m|/([^/]+?)$|;
  # etwas ausfuerlichere Ausgabe der Fehler beim Download
  # zudem wird jetzt nur entpackt wenn wirklich was herunter geladen wurde.
  my $rc=getstore($url, "$pfad$file");
  if( is_success($rc)){
    system("$unzip $pfad$file") ==0 or warn "Fehler bei $unzip $pfad$file ($@)\n"; # < Fehlergund ausgeben
  }else{
    warn "Fehler bei download $url nach $pfad$file (".status_message($rc).")\n"; # < Fehlergrund mit ausgeben
  }
}
close($fh);


Edit:
Korrektur von Zeile 14 (Danke Linuxer)
jan99
 2008-11-14 15:39
#116257 #116257
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
hi !

habe ich dich richtig verstanden?

"das zip mit dem code in ein verzeichnis entpacken und dann nur auf dieses verzeichnis den pfad definieren - dann sollte das unter win laufen ?"

Gruß jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
topeg
 2008-11-14 15:54
#116258 #116258
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
- bzip2 heruterladen: http://www.digistar.com/bzip2/v100/bzip2-100-x86-w...
- Datei in "bunzip2.exe" umbenennen
- Pfad/Programmname in der Variable "$unzip" hinterlegen.
Linuxer
 2008-11-14 16:00
#116259 #116259
User since
2006-01-27
3875 Artikel
HausmeisterIn

user image
@topeg:
Bitte Zeile 14 Korrigieren; die benötigte Variable heißt "liste", nicht "iste" ;)
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!
jan99
 2008-11-14 16:23
#116261 #116261
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
hi !

erst einmal wieder vielen dank für die unterstützung.

jetzt bekomme ich aber immer noch eine fehlermeldung.

das problem kann aber daran liegen, dass - abweichend von meinen einleitenden posting-zeilen jetzt nicht mehr bz2 sondern gz-dateien bereitgestellt werden.

kann man das einfach anpassen ??

ich hätte gerne die ausgabe euch mitgeteilt, aber mit xxx.pl > report.txt läßt sich anscheinend kein report generieren - jedenfalls ist die txt-datei leer.

gruß Jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
topeg
 2008-11-14 16:41
#116263 #116263
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Gnuzip herunterladen: ftp://tug.ctan.org/tex-archive/tools/zip/info-zip/...
Ausführen. Dateien werden entpackt.
"gzip.exe -d" statt "bunzip2.exe" benutzen

Code: (dl )
script.pl 2>errors.txt
speichert die Meldungen (zumindest unter Linux/Unix)
jan99
 2008-11-14 16:53
#116265 #116265
User since
2008-09-18
439 Artikel
BenutzerIn
[default_avatar]
hi !

vielen dank - das sollte bestimmt "gzip124.exe -d" heißen.

nun gibt es aber noch ein neues problem - was ich euch leider verschwiegen habe !

mein rechner hat 64bit !!!! und jetzt meldet das skript das es kompatibilitätsprobleme mit dem gzip gibt !!!!

noch eine idee ???

gruß Jan :-)
perl-Greenhorn - Win7 64bit / strawberry (ehem. activeperl) - www.OpenStreetMap.de
topeg
 2008-11-14 17:06
#116266 #116266
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
"gzip123.exe" ist ein gepacktes ausführbares Archiv. Das enthält neben Dokus auch zwei Gzip Varianten.

versuch mal die Variante http://www.gzip.org/gzip124xN.exe
oder schau mal auf der Seite: http://www.gzip.org/

"gzip124xN.exe" ist ein selbst entpackendes Archiv das unter anderem auch ein Programm gzip.exe enthält.
<< |< 1 2 3 >| >> 24 Einträge, 3 Seiten



View all threads created 2008-10-29 15:52.