• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Sammelbefehl für unzip

Hi
Ich hab mehrere zip Dateien die ich auf einmal entpacken möchte.
Ich versuch es mit unzip *.zip und er sagt mir das filename not matched
Kann mir wer helfen?
Gruss Psykosnake
 

oc2pus

Ultimate Guru
LISTE=`ls -1 *.zip`; for i in $LISTE; do unzip $i; done

[EDIT] beachtet auch den Hinweis von notoxp und TeXpert weiter unten ... mein Befehl kann "falsch sein ;)
 
OP
P

psykosnake

Newbie
Hi
Damals hatte das ein Kumpel für mich gemacht.
Der Befehl geht so nicht , ist dort vieleicht irgenntwo ein Fehler?
 

TeXpert

Guru
ja, da fehlt ein ; aber es geht auch einfacher, die Liste kann onthefly generiert werden:

Code:
for f in *.zip ; do unzip $f ; done

Nachtrag: falls das Leerzeichen (Sonderzeichen) drin sein können, das $f bitte quoten
 
OP
P

psykosnake

Newbie
Jo danke funzt
Aber woher wisst Ihr denn sowas hast du n Link wo diese Konsolenkommandos erklärt werden.
 

oc2pus

Ultimate Guru
psykosnake schrieb:
Jo danke funzt
Aber woher wisst Ihr denn sowas hast du n Link wo diese Konsolenkommandos erklärt werden.

Advanced Bash-Scripting Guide
An in-depth exploration of the art of shell scripting
http://www.tldp.org/LDP/abs/html/
 

regexer

Advanced Hacker
TeXpert schrieb:
aber es geht auch einfacher
Die Lösung mit dem "ls -1 *" sieht man oft. Sie kann genau genommen sogar falsch sein. Man probiere folgendes:
Code:
touch 'bla laber.zip'
for f in *.zip; do echo $f ; done
for f in `ls -1 *.zip`; do echo $f ; done
 

oc2pus

Ultimate Guru
notoxp schrieb:
Die Lösung mit dem "ls -1 *" sieht man oft. Sie kann genau genommen sogar falsch sein. Man probiere folgendes:
Code:
touch 'bla laber.zip'
for f in *.zip; do echo $f ; done
for f in `ls -1 *.zip`; do echo $f ; done

wow, ich bin erstaunt :oops:
hast du eine Erklärung warum das so ist ?
 
Oben