[tar] Meerdere files tegelijk

Pagina: 1
Acties:

  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Ok, volgens mij ga ik nu een hele domme vraag stellen, maar ik kom er echt niet uit. :X

Ik heb een map met een zootje .tar.gz bestanden deze moeten allemaal uitgepakt, gewoon in de zelfde map. Dus ik dacht 'tar -zvxf ./*.tar.gz' en klaar, maar die vlieger ging dus niet op. Ik krijg dan de volgende error:
code:
1
2
3
4
5
6
7
8
tar: ./GDM-AMD.tar.gz: Niet gevonden in archief
tar: ./GDM-Angel.tar.gz: Niet gevonden in archief
tar: ./GDM-AppleTuxBlack.tar.gz: Niet gevonden in archief
[...enz...]
tar: ./GDM-Unxstar.tar.gz: Niet gevonden in archief
tar: ./GDM-Valladolid.tar.gz: Niet gevonden in archief
tar: ./GDM-xpto.tar.gz: Niet gevonden in archief
tar: Fout afsluiting uitgesteld na eerdere fouten
Als ik met gunzip ga uitpakken lukt het prima met een jokerteken, alleen zit ik dan nog met die verrekte .tar bestanden die ik niet uit kan pakken. Want ook bij gewone tar-balls krijg ik de bovenstaande error als ik 'tar -xf ./*' doe.

Ik heb de manual doorgespit en het internet afgestruint, maar ik kan het niet vinden. Wat zie ik over het hoofd :?

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

for i in *.tar; do tar xvf $i; done

All my posts are provided as-is. They come with NO WARRANTY at all.


  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Hmm, dat werkt idd wel :P

Alleen is het echt niet mogelijk om met tar gewoon jokertekens te gebruiken? Dat is toch een stuk makkelijker dan zo'n for loop te moeten schrijven in bash...

  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

Nee, want tar ziet de args als volgt:
tar xvzf bla.tar.gz bla1 bla2
tar [extract verbose gunzip file] bla.tar.gz [bla1 in bla.tar.gz] [bla1 in bla.tar.gz] etc.

Hij wil dus die bla1 en bla2 uit bla.tar.gz halen. Maar die zitten er niet in -> error.

All my posts are provided as-is. They come with NO WARRANTY at all.


  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Ah vandaar, dat is dus nog wel ff voor verbetering vatbaar...
Maargoed ik ben geholpen! Bedankt CyBeR!

  • blaataaps
  • Registratie: Juli 2001
  • Niet online
Hoezo voor verbetering vatbaar? Het gaat al tientallen jaren prima zo, tar kan niet toch ruiken aan een bestandsnaam of het een archive is, of dat ie het uit een archive moet plukken? Wat te doen als er zowel een bestand bestaat wat zo heet, en eentje in een archive zit, wat te doen? Op deze manier is de uitkomst precies voorspelbaar, 1 archive, de rest aan args zijn files die er uit moeten, als je meer en anders wilt fix je dat zelf :)
Als je het zo onhandig vindt kun je ook in 3 regels een sh-script maken dat deze functionaliteit biedt :)

  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Dat ben ik deels met je eens, dat iets 10 tallen jaren mee gaat wil niet zeggen dat het nog steeds ook optimaal is. Ik vind het niet echt gebruiksvriendelijk dat je een for loop moet gaan schrijven om meerdere archieven tegelijk uit te pakken. Uiteraard kan tar niet ruiken of iets een archief is of niet, maar daar jou je een switch voor kunnen maken, bijvoorbeeld zoiets:
code:
1
tar zxvf blaat1.tar.gz blaat2.tar.gz --files2extract *.png

dan weet tar dat blaat1.tar.gz en blaat2.tar.gz archieven zijn en dat ie alle png-tjes eruit moet halen...

Uiteraard kan je daar ook een scriptje voor schrijven, maar handig is het niet :P

  • Confusion
  • Registratie: April 2001
  • Laatst online: 01-03-2024

Confusion

Fallen from grace

Mac_Cain13 schreef op 24 april 2004 @ 16:15:
Dat ben ik deels met je eens, dat iets 10 tallen jaren mee gaat wil niet zeggen dat het nog steeds ook optimaal is. Ik vind het niet echt gebruiksvriendelijk dat je een for loop moet gaan schrijven om meerdere archieven tegelijk uit te pakken.
Ik denk dat bepaalde files uit een archive willen halen vaker voorkomt dan meerdere archives tegelijk uit willen pakken. In het laatste geval kan je namelijk meestal alles in hetzelfde archive stoppen. Ik vind het bepaald gebruiksvriendelijk om het meestvoorkomende probleem gemakkelijk op te lossen. Bovendien vind ik dit eigenlijk ook het meest logisch en is kunnen raden hoe het werkt uiteindelijk niet gebruiksvriendelijker dan moeten weten hoe het werkt?

Wie trösten wir uns, die Mörder aller Mörder?


Verwijderd

Confusion schreef op 24 april 2004 @ 17:21:

Ik denk dat bepaalde files uit een archive willen halen vaker voorkomt dan meerdere archives tegelijk uit willen pakken. In het laatste geval kan je namelijk meestal alles in hetzelfde archive stoppen. Ik vind het bepaald gebruiksvriendelijk om het meestvoorkomende probleem gemakkelijk op te lossen. Bovendien vind ik dit eigenlijk ook het meest logisch en is kunnen raden hoe het werkt uiteindelijk niet gebruiksvriendelijker dan moeten weten hoe het werkt?
Met meerdere archives loopt je tegen veel praktische problemen op. Als je nu één bepaald bestand uit een archive wilt halen, uit welk archive moet het dan komen? En als meerdere archives nu hetzelfde bestand bevatten? Etc. etc.

  • cavey
  • Registratie: Augustus 2000
  • Laatst online: 17-02 19:31
ehm

cheatah, dat is toch volkomen offtopic? En ook een totale non-issue? Als jij niet bijhoudt in welke archive welke file zit, ben je niet slim bezig. Dan ga je inderdaad rot zoeken naar een bestandje "goh waar zit het nou ook alweer?".

Dat is toch gewoon een kwestie van goed boekhouden dan?

ontopic: Tar werkt uitstekend zo.

tape archiver... daar komt het vandaan, dat het nu ook op een gewoon bestandssysteem werkt.. tja.

Beetje kortzichtig om een (volgens mij toch echt wel meer dan 10 jaar oud) programma als lomp te omschrijven, omdat het werkt op basis van de toenmalig beschikbare hardware: Tape drives.

Dan ga je echt niet met multiple tar files aan de slag (want dat zijn dan dus meerdere TAPES... en je hebt meestal maar 1 tape eraan hangen heh? toen dus).

Ik vind het ook VEEL logischer om dan met een for loopje door al je archives heen te lopen om die uit te pakken.

Want WAAR ligt dan het verschil met bijvoorbeeld winzip? Kan je daar een hele zooi zip files selecteren, rechtermuisknop -> unzip? Is toch gewoon het zelfde?

select -> unzip, select -> unzip.....

for loopje -> untar...... het is een interface kwestie dan, absoluut geen nuk van de archiver zelf. Die werkt zoals het hoort te werken: op 1 file, en daar kan je dan dingen uit extracten.

[ Voor 64% gewijzigd door cavey op 24-04-2004 17:49 ]


  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Tar werkt idd uitstekend. Alleen vind ik een for-loop minder praktisch dan een commandline switch.
Als je kijkt waar tar oorspronkelijk voor gemaakt is is zo'n switch onzin. Je wilt dan idd alleen maar bepaalde files uit een archief halen en vrijwel nooit meerdere archieven tegelijk uitpakken.
Tegenwoordig is het (iig bij mij) meestal andersom. Alleen loop je bij het inbouwen idd tegen veel onhandigheden aan, zoals cheetah al zegt. Dan is een for-loop minder werk.

Ik schrijf wel ff een shell-scriptje, heb ik mijn functionaliteit en blijft tar backwards compatible met andere scripts en met jullie tape drives ;)
offtopic:
Cheetah had toch een groene nick :?
Volgens mij heb ik iets gemist...
Pagina: 1