Schrift
[thread]9208[/thread]

Datei umbennen: von *.bz2 in *.zip

Leser: 1


<< |< 1 2 >| >> 12 Einträge, 2 Seiten
Spuki
 2007-07-19 16:54
#78664 #78664
User since
2007-07-13
38 Artikel
BenutzerIn
[Homepage] [default_avatar]
Wie kann ich eine Datei von *.bz2 in *.zip umbennen damit ich sie anschließend entzippen kann....

Mein Code sieht bis jezt so aus....




Code: (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
28
#!/usr/bin/perl -X

use strict;
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );

my $files;
my @filename;


opendir(DIR, "$path");

for $files (grep {/.bz2/} readdir DIR){

push(@filename, $files);
}

****************************************
* HIER SOLLTE UMBENNENUNG STATTFINDEN *
****************************************

my $dir = '$path';
my $zipfile = '$neurDateiname';

my $zip = Archive::Zip->new();
chdir $dir or die "Cannot chdir $dir:$!\n";
die "Error reading $zipfile:$!" unless $zip->read( "$dir/$zipfile" )
== AZ_OK;
$zip->extractTree();
\n\n

<!--EDIT|Spuki|1184849844-->
$^="2rehtona 3lrep 1tsuj 4rekcah";@~=sort split/ /,$^;_(
_(_(_())));sub _{print$^=reverse substr$~[0],1;shift@~;}

...erster Versuch eines JAPH :D
FlorianL
 2007-07-19 16:57
#78665 #78665
User since
2007-05-18
142 Artikel
BenutzerIn
[default_avatar]
bz2 und zip sind 2 paar schuhe, einfach umbenennen wird nicht funktionieren?

Quote
[admin@doorgunner ~]$ bzip2 test.txt
[admin@doorgunner ~]$ mv test.txt.bz2 test.txt.zip
[admin@doorgunner ~]$ unzip test.txt.zip
Archive: test.txt.zip
End-of-central-directory signature not found. Either this file is not
a zipfile, or it constitutes one disk of a multi-part archive. In the
latter case the central directory and zipfile comment will be found on
the last disk(s) of this archive.
unzip: cannot find zipfile directory in one of test.txt.zip or
test.txt.zip.zip, and cannot find test.txt.zip.ZIP, period.
[admin@doorgunner ~]$


oder hab ich dich falsch verstanden?

-Florian\n\n

<!--EDIT|FlorianL|1184849957-->
Spuki
 2007-07-19 16:59
#78666 #78666
User since
2007-07-13
38 Artikel
BenutzerIn
[Homepage] [default_avatar]
und wie kann ich dann diese *.bz2 files entzippen :rock:
$^="2rehtona 3lrep 1tsuj 4rekcah";@~=sort split/ /,$^;_(
_(_(_())));sub _{print$^=reverse substr$~[0],1;shift@~;}

...erster Versuch eines JAPH :D
FlorianL
 2007-07-19 17:01
#78667 #78667
User since
2007-05-18
142 Artikel
BenutzerIn
[default_avatar]
gibts bestimmt auch ein cpan modul für... musse ma suchen, ich hab jetz feierabend *gg*

oder halt über system("bunzip2 $file");

adios! :)
Spuki
 2007-07-19 17:06
#78668 #78668
User since
2007-07-13
38 Artikel
BenutzerIn
[Homepage] [default_avatar]
Archive::Extract

Bzip2 Support

There's currently no very reliable pure perl Bzip2 implementation available, so Archive::Extract can only extract bzip2 compressed archives if you have a /bin/bunzip2 program. :(\n\n

<!--EDIT|Spuki|1184851476-->
$^="2rehtona 3lrep 1tsuj 4rekcah";@~=sort split/ /,$^;_(
_(_(_())));sub _{print$^=reverse substr$~[0],1;shift@~;}

...erster Versuch eines JAPH :D
sid burn
 2007-07-19 17:31
#78669 #78669
User since
2006-03-29
1520 Artikel
BenutzerIn

user image
Vielleicht hilft das hier:
Compress::Bzip2\n\n

<!--EDIT|sid burn|1184851905-->
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
Spuki
 2007-07-19 18:42
#78670 #78670
User since
2007-07-13
38 Artikel
BenutzerIn
[Homepage] [default_avatar]
[quote=sid burn,19.07.2007, 15:31]Vielleicht hilft das hier:
Compress::Bzip2[/quote]
danke sid, ich habs jetzt aber einfach über system() gemacht....

folgendes bzip2 progamm habe ich verwendet:
bzip2 Programm [Win 95/98/NT/2000/XP]

Code: (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
#!/usr/bin/perl -w

use strict;
use Archive::Zip qw( :ERROR_CODES :CONSTANTS );

my $files;
my @filename;
my $newname;


opendir(DIR, "H:/pmi_daten/pmi/aix0021a");

for $files (grep {/.bz2/} readdir DIR){

push(@filename, $files);
}
my $x=0;


foreach(@filename){

$files = "bzip2 -d H:/pmi_daten/pmi/aix0021a/" . "$_";

system($files);
}
$^="2rehtona 3lrep 1tsuj 4rekcah";@~=sort split/ /,$^;_(
_(_(_())));sub _{print$^=reverse substr$~[0],1;shift@~;}

...erster Versuch eines JAPH :D
renee
 2007-07-19 19:25
#78671 #78671
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Es ist besser, system mit einer Liste aufzurufen:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
use File::Spec;

my @args = ('bzip2', '-d');
my @paths = ('H:','pmi_daten','pmi','aix0021a');
foreach(@filename){
    
    my $path = File::Spec->catfile( @paths, $_);
    system(@args,$path);
}
ungetestet
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/
FlorianL
 2007-07-20 10:10
#78672 #78672
User since
2007-05-18
142 Artikel
BenutzerIn
[default_avatar]
[quote=renee,19.07.2007, 17:25]Es ist besser, system mit einer Liste aufzurufen[/quote]
moin renee, magst du mal kurz erklären warum?
ptk
 2007-07-20 10:32
#78673 #78673
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
Weil man sich dann nicht um das Quoting von Shell-Metazeichen kümmern muss. Beispielsweise Leerzeichen oder Anführungszeichen in Dateinamen.
<< |< 1 2 >| >> 12 Einträge, 2 Seiten



View all threads created 2007-07-19 16:54.