Om du vill se vilka filer ett arkiv innehåller utan att packa upp dem använder du Terminalens listningskommandon: unzip -l för ZIP-filer eller tar -tf för TAR-arkiv. Den här guiden visar hur du kontrollerar filnamn, mappstruktur och tillgängliga detaljer utan att packa upp arkivfilerna.

Lista innehållet i en ZIP-fil från Finder med Terminal

För en ZIP-fil börjar du med unzip -l. Alternativet -l med liten bokstav listar posternas namn, okomprimerade storlekar och ändringsdatum. Om du kör unzip utan ett listningsalternativ packas filer normalt upp i den aktuella katalogen, så låt alternativet stå kvar. Dessa funktioner beskrivs i Apples distribuerade unzip-manual.

  1. Öppna Terminal och låt Finder-fönstret med ZIP-filen vara synligt.
  2. Skriv /usr/bin/unzip -l följt av ett blanksteg. Tryck inte på Retur ännu.
  3. Dra ZIP-filen från Finder till Terminal-fönstret, efter blanksteget.
  4. Kontrollera att kommandot börjar med /usr/bin/unzip -l, följt av arkivets sökväg, och tryck sedan på Retur.

När du drar en fil till Terminal infogas dess absoluta sökväg, vilket beskrivs i Apples Terminal-guide. Då behöver du inte gå till arkivets mapp innan du listar innehållet.

Om det till exempel finns en tillfällig ZIP-fil med namnet Archive Inspection Demo.zip på skrivbordet ser det fullständiga kommandot ut så här:

/usr/bin/unzip -l "$HOME/Desktop/Archive Inspection Demo.zip"

Sökvägen inom citationstecken håller ihop blankstegen i det här exempelfilnamnet. Kommandot kräver att ZIP-filen finns på den platsen; det skapar inte exempelfilen. Om din fil finns någon annanstans eller har ett annat namn använder du dragmetoden i stället för att kopiera exempelsökvägen.

Apple beskriver dubbelklick på en ZIP-fil i Finder som sättet att packa upp den; den uppackade filen visas då bredvid ZIP-filen. För den här granskningen markerar och drar du i stället arkivet. Se Apples instruktioner för ZIP-filer.

Öva med ett tillfälligt arkiv

Du kan skapa ett litet exempel som bara innehåller syntetisk text. Välj ett oanvänt mappnamn så att övningen hålls åtskild från befintliga filer.

  1. Gå till skrivbordet i Finder och välj Arkiv > Ny mapp. Döp mappen till Archive Inspection Demo. Om namnet redan används väljer du ett annat ledigt namn och använder det genom hela övningen. Apple beskriver hur du skapar mappar i Ordna filer i mappar på Mac.
  2. Skapa ett dokument i Textredigering med texten Blue circle sample. Välj Format > Gör till oformaterad text och sedan Arkiv > Spara. Spara dokumentet i den nya mappen som shapes.txt.
  3. Skapa ett till oformaterat textdokument med texten Green square sample och spara det i mappen som colors.txt. Stegen för att skapa och konvertera dokument följer Apples guide till Textredigering.
  4. Kontrollklicka på mappen i Finder och välj Komprimera. Apple beskriver att komprimering av en mapp skapar en ZIP-fil med samma namn. Kontrollera innan du fortsätter att det inte redan finns en ZIP-fil med det namnet; använd vid behov ett nytt mappnamn. Se Komprimera och packa upp filer och mappar på Mac.
  5. Lista den ZIP-fil som skapades genom att följa Terminal-stegen ovan.

Leta efter poster som motsvarar Archive Inspection Demo/shapes.txt och Archive Inspection Demo/colors.txt. Se dessa som de förväntade sökvägarna i det här konstruerade exemplet, inte som en utskrift från en testad Mac-session. Posternas ordning och ytterligare poster kan variera.

Originalmappen finns kvar eftersom du skapade den före komprimeringen. Att den finns kvar visar inte att listningskommandot packade upp något. Du kan ta bort exempel-mappen och ZIP-filen i Finder när du är klar.

Läs listningen och välj den detalj du behöver

En arkivlistning visar vilka poster som finns lagrade i arkivet. Den öppnar inte texten eller bilden i varje post. Använd den här vägledningen för att välja den minsta kontroll som räcker:

Din fråga Kommando eller kontroll Så tolkar du resultatet
Vilka ZIP-poster finns, och hur stora är de? unzip -l följt av arkivets sökväg Läs de lagrade sökvägarna och de okomprimerade storlekarna.
Kan jag se enbart namnen på ZIP-posterna? unzip -Z1 följt av arkivets sökväg Läs ett postnamn per rad, utan sammanfattningstabellen.
Finns det filer med liknande namn i olika mappar? Jämför de fullständiga sökvägarna Drafts/shapes.txt och Final/shapes.txt är olika sökvägar.
Finns en listad fil redan på skrivbordet? Kontrollera dess avsedda plats separat i Finder En arkivpost i sig visar inte att en separat fil finns där.

Om du vill ha en renare vy med enbart namn för det syntetiska exemplet kör du:

/usr/bin/unzip -Z1 "$HOME/Desktop/Archive Inspection Demo.zip"

Här väljer -Z ZipInfo-läge och 1 begär enbart filnamn, ett per rad. Lagrade katalognamn ingår fortfarande i de visade sökvägarna. Dessa alternativ beskrivs i Apples distribuerade zipinfo-manual.

Behåll hela sökvägen när du jämför poster. Två filer med namnet shapes.txt kan ligga i olika mappar i ett arkiv. En listning avgör däremot inte vad som skulle hända om du senare packade upp poster till en mapp som redan innehåller filer med samma namn. Med det här arbetsflödet slipper du ta ställning till målmappen, eftersom listningen visas utan att arkivfilerna skrivs till disk.

En lyckad listning betyder inte heller att arkivet har testats fullständigt. Manualen för unzip beskriver ett separat -t-kommando som expanderar poster i minnet och kontrollerar deras lagrade kontrollsummor. Att se en posts namn är inte samma sak som att testa dess innehåll. Se de dokumenterade alternativen för listning och testning.

Granska TAR-arkiv och komprimerade TAR-filer

För ett TAR-arkiv använder du /usr/bin/tar -tf följt av sökvägen. I Apples distribuerade manual väljer -t listningsläge och -f anger arkivfilen. Samma implementation känner automatiskt igen gzip-komprimering vid läsning, så det här mönstret fungerar även för ett gzip-komprimerat TAR-arkiv. Se Apples distribuerade tar-manual.

För ett befintligt syntetiskt arkiv med namnet Sample Bundle.tar.gz på skrivbordet skulle det fullständiga kommandot se ut så här:

/usr/bin/tar -tf "$HOME/Desktop/Sample Bundle.tar.gz"

Det här är ett separat exempel: Finder-övningen ovan skapar en ZIP-fil, inte den här TAR-filen. Kör bara kommandot när en sådan fil finns, eller skriv /usr/bin/tar -tf följt av ett blanksteg och dra en befintlig tillfällig TAR-fil till Terminal.

Om du vill ha en mer detaljerad listning lägger du till v:

/usr/bin/tar -tvf "$HOME/Desktop/Sample Bundle.tar.gz"

Manualen beskriver utförlig listning som en utdata liknande en lång kataloglistning. Låt t stå kvar i kommandot: x väljer uppackning till disk. Samma manual förklarar att upprepade namn i ett arkiv kan skriva över tidigare poster vid uppackning, ännu en anledning att skilja listning från uppackning. Se tar-lägena och det utförliga alternativet.

Vad kan Apple Genvägar göra i det här arbetsflödet?

Genvägar kan ta emot markerade Finder-objekt och visas som en Finder-åtgärd. Den integrationen ger en utgångspunkt för automatisering, men definierar inte i sig någon funktion för att lista ett arkiv. Apples instruktioner för Finder och snabbåtgärder beskriver var genvägar körs, medan kommandomanualerna ovan beskriver själva listningsfunktionen.

Innan du anpassar en befintlig genväg bör du granska dess åtgärder. Håll markören över en åtgärd i åtgärdsbiblioteket i redigeraren och klicka på informationsknappen. För en åtgärd som redan finns i genvägen kontrollklickar du på dess symbol och väljer Visa info. Apple anger att beskrivningen visar vilka indata som godtas och vilken utdata som skapas. Se Navigera i åtgärdslistan i Genvägar på Mac.

För den här uppgiften ska du hålla isär tre saker: det markerade arkivet är en fil, listningen är text som beskriver posterna och postnamnen är inte uppackade filobjekt. En åtgärd som skapar filer genom att packa upp ett arkiv skulle ändra arbetsflödet. De Apple-guider som citeras här fastställer inte att det finns en inbyggd arkivbläddrare, så hela granskningsförfarandet använder Terminal i stället för att utgå från att en sådan åtgärd finns.

Inställningarna för indata spelar också roll. Apple beskriver att en genväg kan begränsa vilka innehållstyper den godtar och använda Stoppa och svara när inga indata tas emot. Ett Finder-arbetsflöde bör godta filer, och om indata saknas bör det stoppa tydligt i stället för att skicka vidare ett tomt värde. Dessa inställningar beskrivs i Begränsa indata för en genväg när den körs från en annan app på Mac.

Om arkivet inte listas korrekt

Använd resultatet för att välja nästa steg i stället för att upprepade gånger ändra alternativen:

  • Det går inte att hitta arkivet: kontrollera att filen fortfarande finns i Finder och bygg sedan kommandot igen genom att dra in exakt det objektet. Kontrollera exempelnamnet igen om Finder skapade en ZIP-fil med ett annat namn.
  • Utdata rapporterar ett format- eller läsfel: granskningen har inte slutförts. Kontrollera att du valde rätt arkiv; att ändra filnamnstillägget bevisar inte att innehållet har det formatet.
  • Några namn visas före ett fel: betrakta resultatet som ofullständigt. Dra inte slutsatsen att de synliga posterna utgör hela arkivet.
  • En post är ett annat arkiv: den yttre listningen visar det inbäddade arkivet som en post. Den visar inte vad det inbäddade arkivet innehåller.

För en vanlig ZIP-kontroll är det kortaste fullständiga arbetsflödet att skriva /usr/bin/unzip -l, lägga till ett blanksteg, dra in arkivet och trycka på Retur. Läs de fullständiga sökvägarna och eventuella slutmeddelanden. När du har filnamnen eller strukturen du behöver är granskningen klar, utan att arkivfilerna har packats upp.

Källor