Het is onvermijdelijk bij het gebruik van je Mac dat je uiteindelijk bestanden comprimeert tot een zip-archief; hetzij voor opslag, back-up, om te e-mailen of om een beetje ruimte op de harde schijf te besparen. Maar zo is het leven dat als er iets mis kan gaan, de kans groot is dat dit uiteindelijk zal gebeuren en je een beschadigd zip-archief overhoudt dat je niet lijkt te openen. Ik wil je laten zien hoe je Terminals gebruikt ritssluiting commando's om een beschadigd zip-archief te targeten en, als alles goed gaat, het archief te repareren; en zo niet, probeer dan zoveel mogelijk te redden.
Om te demonstreren heb ik een zip-archief van alle Logic Pro-projectbestanden van een productie die ik onlangs heb voltooid. Ik had een vriend en wilde hem laten zien hoe ik een deel van de geluiden in de song bereikte, dus ik klikte om het archief te unzippen met behulp van het ingebouwde archiefhulpprogramma van OS X. Alles ging goed totdat ik een fout ontdekte dat Archive Utility het archief niet kon extraheren. Ik probeerde het archief uit te pakken met een paar andere apps zonder succes. Ik accepteerde uiteindelijk dat het archief verdwenen was, en daarmee mijn projectbestanden en al mijn hoop en dromen om een muzikant te zijn; maar toen sloeg mijn vriend toe en stelde voor dat ik Terminals zou proberen te gebruiken ritssluiting commando's.
Als u de terminal opent, kunt u niet alleen opdrachtregels wijzigen met één regel, maar kunt u Terminal ook gebruiken om wijzigingen aan te brengen in bestanden en mappen. Als je in Terminal het woord typt ritssluiting en druk op return, je krijgt een op tekst gebaseerd menu met Terminal-commando's te zien die kunnen worden gebruikt bij het wijzigen van zip-bestanden. Aan de bovenkant, net onder de copyright-informatie, ziet u een soort van opdrachtregelformule voor het invoeren van acties, en rechtsonder ziet u alle opties die kunnen worden uitgevoerd.
Degene waarin we geïnteresseerd zijn, is -F fix zipfile (-FF probeert harder).
Als we langs de gids bovenaan gaan, kunnen we zien dat we eerst moeten typen ritssluiting, dan de optie die we willen preformeren uit de lijst en dan het pad naar het bestand. Als u het ZIP-archief in uw thuismap plaatst, kunt u het pad weglaten, omdat de thuismap de standaardlocatie is waarnaar Terminal naar het bestand zoekt. Voor dit voorbeeld plaats ik het zip-archief in mijn thuismap en dan hernoem ik het archief in broke.zip, dus er zijn geen spaties in de naam.
Ik zal in Terminal de volgende opdrachtregel typen:
zip -F broke.zip --out pleasework.zip
Deze Terminal-opdracht geeft Terminal opdracht om het genoemde archief te targeten broke.zip in mijn thuismap met de zipopdracht -F, voor Fix Archive en maak indien mogelijk een nieuw archief met de naam pleasework.zip. Als ik in dit specifieke voorbeeld op Return heb geretourneerd, krijg ik een waarschuwing:
Terminal heeft het nu over ons beschadigde archief. Terminal vertelt ons dat het kan zien dat het een grotendeels intact archief is, dat het de eindhandtekening mist en het probeert -FF opdracht om het archief te proberen repareren. Ik typ de nieuwe opdracht in Terminal, deze keer met -FFoptie, voor Archief repareren (probeer harder):
zip -FF brak.zip --out pleasework.zip
Terminal vraagt nu of dit een single-disk archief is, wat betekent dat het een compleet archief is en geen deel uitmaakt van een groter archief. Voer Y in voor Ja en druk op Return. Terminal zal beginnen met het extraheren van wat het kan uit het beschadigde archief en de bestanden opnieuw inpakken in een nieuw archief dat wordt gemaakt met de naam van het archief dat u hebt opgegeven in de opdracht Terminal. Als u naar uw basismap gaat, verschijnt er een nieuw archief met de naam die u hebt opgegeven in de opdracht Terminal na de --uit functie.
Het verliezen van bestanden als gevolg van een beschadigd archief kan variëren van vervelend tot iets potentieel verwoestend, afhankelijk van wat ze zijn. Maar zoals altijd biedt OS X enkele zeer nuttige hulpmiddelen die, zoals ik hier heb aangetoond, de dag echt kunnen redden. Het gebruik van Terminal om beschadigde archieven te repareren, is een eerste stap richting actie als u ooit niet in staat bent om het archief uit te pakken.