Gå till innehåll
Just nu i M3-nätverket

Komprimera/packa filer


xeric
 Share

Rekommendera Poster

Lite tankar och tips om komprimering...

 

 

Vet inte hur ni gör när ni hanterar komprimerade filer, men jag kör i huvudsak med OS X inbyggda "Archive Utility.app". En gång i tiden hade jag "Suffit Deluxe", men den blev bara större och tyngre med tiden, så den kör jag utan med nu. Man kommer långt på det inbyggda programmet + lite hjälp av ett par program till.

 

Nu finns det ju en uppsjö av en mängd olika program för det här. En del bra, andra mindre bra. Och med AppStore har mängder av små "koola" program ökat. :rolleyes:

 

För mig handlar det om att kunna göra det man behöver, med så program som möjligt. Vill inte bunkra upp datorn med en massa (skräp)program. Speciellt när man kan fixa en del av det själv - utan xtra program.

 

Det inbyggda programmet "Archive Utility". Den är snabb och bra och räcker till det mesta. Bara att högerklicka på en fil och välja "komprimnera". Och den packar även upp en del andra format, än zip. Till den finns också en egen "pref-pane" (som inte är installerad på förhand). Man kan lägga till den i Systeminställningar.

 

I Finder :finder:: Anv kortkommandot "⇧⌘G", och klistra in i raden:

/System/Library/CoreServices/Archive Utility.app/Contents/Resources/

 

post-64246-026731700 1359667333_thumb.png

 

Där ligger filen "Archives.prefPane". Dubbelklicka på den, så installeras den. I Systeminställningarna finns den nu längst ner under "Övrigt" (Annat ?).

 

post-64246-005571100 1359667369_thumb.png

 

Där kan man ställa in hur den skall packa/packa upp osv. Inställningarna som redan är där är bra... men när man kanske vill göra på ngt annat sätt.

 

 

Sen finns det ju format som inte det inbyggda programmet kan hantera: .sit sitx .rar osv.

 

Jag kör med programmet Unarchiver.app (som är gratis) och det täcker upp resten. De har en imponerande lista med olika format som stöds.

 

Tidigare hade jag UnRarX.app, som var riktigt bra. Men eftersom Unarchiver fixar .rar så behövs den inte längre. Har iofs kvar den lite som backup ifall det kommer nån rar fil som är lösenordsskyddad. Har inte sett hur Unarchiver hanterar det än.

 

Men de 2 programmen (inkl det inbyggda) klarar man sig på. Ser ingen anledning till att köpa ngt annat.

 

 

 

Men...

Sen finns det ju gånger då man behöver packa sina filer på annat sätt än zip. Då kan man faktiskt fixa det riktigt enkelt i Terminalen (om man vill). Så här kommer en liten genomgång och tips hur man kan göra där, och hur det funkar. "Vanliga zip" är bra, men komprimerar inte så himla effelktivt alltid. Så då kan man använda sig av tar & gzip.

 

Finns även fler format (t ex Bzip2/.bz2) men för vanlighetens skull.

 

 

 

Tar & Gzip

Tar gör egentligen ingen komprimering, utan är mer en förpackning kan man säga. Med olika "handlers" kan man komprimera direkt, eller köra komprimeringen separat om man t ex vill ha hårdare komprimering.

 

 

Gzip

Kan man köra precis som den är skriv gzip + ett mellanslag i terminalen och dra in filen i terminalföntret... o sen enter. Exempel:

gzip /Users/DittNamn/Desktop/EnBild.jpg

Resultatet blir: DinBild.jpg.gz

 

För att packa upp den - dubbelklicka på filen, eller i Terminal så använder man "gunzip" ...och sen samma sätt, fast man väljer den komprimerade filen:

gunzip /Users/DittNamn/Desktop/EnBild.jpg.gz

 

 

Tar

Om man t ex har en större fil/mapp som man vill komprimera, kan man med fördel använda sig av tar och gzip. Komprimerade själv alldeles nyligen en hel disk som sjönk från ≈ 12.6GB ner till 5.25GB.

 

Så det vanliga sättet är:

tar -cvzf MinFolder.tar.gz Minfolder

Den färdiga komprimerade filen är: MinFolder.tar.gz

 

För att packa upp en tar-fil, är det bara att dubbelklicka på den så sköter de andra programmen om det. Men vill man göra det manuellt i Terminalen (mest för att visa hur man gör).

tar -xvf MinFolder.tar.gz

Bokstaven "x" gör att den packas upp

 

 

Vill man göra det mer manuellt, och kanske ställa om hur hårt den skall komprimera.

Först gör man en "tar" utan att ha med "z" (i "-cvzf"). z är komprimeringen gör gzip.

(som referens: man kan också anda "j" för bzip2):

tar -cvf MinFolder.tar Minfolder

Nu heter filen: MinFolder.tar

 

Och för att köra komprimering på den:

gzip -9 MinFolder.tar

"-9" anger komprimeringsgraden. Värdena man kan ha är 1-9, där 1 = snabbt, och 9 = bättre komprimering. Har för mig att 6 är det som är det förvalda värdet - dvs om man inte anger ngt.

 

 

 

För att testa lite... skapa en mapp på skrivbordet som heter "test" och kopiera in lite filer att testa med. I terminalen:

cd ~/Desktop/test

Nu är du där och kan köra exmplen utan långa sökvägar till filerna.

 

 

 Manualer: tar, gzip

 

 

 

 

Zip

Ja, så var det ju det där med zipfiler...

 

Dvs zipfiler från Macen, som sen hamnar på en annan dator/annat OS. Det följer ju med lite skräpfiler, t ex: ".DS_Store" osv. Och det gör ju oftast inte så mkt i sig, men än att det kan vara förvirrande för en ovan datoranvänder på mottagarsidan. Ibland lite irriterande med. Och jag tycker man har lite ansvar som Macanvändare att ta bort dem då.

 

Sen finns det gånger då man skall packa filer där mottagaren har som krav att de inte får innehålla sånna saker. T ex om man skall skicka iväg färdiga script osv. Då skall inte de behöva städa upp i alla mappar för att sen packa om det.

 

 

Det finns väl i o f s några program som kan "städa upp" i filerna. Hade ett innan, men efter att jag uppgraderade till Lion fungerade inte det programmet längre (PPC), och motsvarande nyare program var/är inte lika bra.

 

Så, jag gjorde mig ett litet shellscript som man sen zip'ar sin fil med istället. Är väl lite överkurs - men för den som vill ha, och kunna använda/köra själv, så gör kommer här en lista på hur man gör (kan göra).

 

 

Är väl lite pill o fix... Men ta det lungt, och håll tungan i rätt mun, så går det bra. :ThumbsUp:

 

- - -

 

 

En grejj i taget och "Enter" efter varje Terminalgrejj...

  1. I hemfoldern. Skapa en mapp som heter: "Shell scripts" (är alltid bra o ha till andra sen, så har man de samlade ifall man har/får fler senare)
    Gör den manuell i Finder, eller i Terminalen:
    mkdir ~/Shell\ scripts


     

  2. Öppna TextEdit (Skivtext?) och klistra in följande:
    #!/bin/bash
    #
    #
    _folder=`basename "$1"`;
    _path=`dirname "$1"`;
    
    # Zip...
    cd "$_path";
    zip -r -o "$_folder".zip "$_folder" -x "*.DS_*" "*__MACOSX*" "*.Trashes*" "*_notes*" "*.git*" "*.svn*" "*error_log*";
    say zip\'d;


    Spar sedan filen i mappen "Shell scripts" som: iZip.sh
     
    Om man kikar lite närmare på:

    zip -r -o "$_folder".zip "$_folder" -x "*.DS_*" "*__MACOSX*" "*.Trashes*" "*_notes*" "*.git*" "*.svn*" "*error_log*";


    zip = ja... att vi skall zip'a filen.
    -r = rekursivt - att den skall inkludera undermappar osv
    -o = har med filens tid att göra
    -x = Här kommer alla de saker man inte vill inkludera. Så t ex .DS_Store och __MACOSX-foldern osv följer inte med. En del av de övriga i raden kan man kanske ta bort, ,men det gör ju inget att de ligger där. "_notes" är ett foldernamn som Dreamweaver skapar. .git och .svn är dolda filer från resp program som ibland finns med, och error_log finns med i en servermiljö.
     
    Lägg till fler egna om ni vill. Man skulle också kunna skriva -df (datafork) som är just för OS X och tar bort såna saker, men i o m att allt är spec'at separat så kan även andra OS köra det med.
     

  3. För att kunna köra filen sen som script måste man ha rättigheter kör-rättigheter (x). I Terminalen, skriv:
    chmod u+x ~/Shell\ scripts/iZip.sh


     

  4. Nu lägger man till ett alias till .bash_profile. Eftersom det är en dold fil är det enklast att öppna med Terminal:
    open ~/.bash_profile


     
    Scrolla längst ner i filen - gör ett par extra nya rader och skriv in:

    # iZip
    alias iZip='~/Shell\ scripts/iZip.sh'


    Spara och stäng.
     
    För att det skall funka direkt kan man starta om Terminalen eller skriv:

    .  ~/.bash_profile


 

- - -

 

Så, då var det klart. För att testa att den zip'ar... I Terminalen, skriv iZip + ett mellanslag, och dra sen in en mapp där:

iZip /Users/MittNamn/Desktop/MinFolder 

 

"-Zipped" :finder:

 

 

 Manual: zip

 

 

Att tänka på när man komprimerar. Det är inte alltid som man får så bländade resultat när man komprimerar en fil. Om man t ex tar en mapp full med JPG-biler el mp3-filer... så är ju båda redan i s k komprimerade format. Så vinsten blir ju mindre s a s. Men för stora dokument och filer kan man spara otroligt med plats. Att kunna få ner en fil ≈ 4gb gör ju att man kan få plats med den på en DVD eller en liten USB-sticka

 

 

Hoppas det kan vara till hjälp för ngn... :crossfingers::yeahbaby:

 

 

 

- - -

 

Finns en lite smart quicklook-plugin med, som man kan quicklook'a zipfiler (även andra format) med:

 

Archive.qlgenerator.zip

 

Packa upp och lägg den i "~/Library/QuickLook"

 

Markerar man en zip och trycker på mellanslagstangenten:

post-64246-012130000 1359670019_thumb.png

 

 

 

 

- - -

Blev väl lite långt inlägg... :blushing: Men det bjuder jag på. ;)

Redigerad av iEricF
  • Rösta upp 2
Länk till kommentar
Dela på andra webbplatser

+ 1 Toppen! :yeahbaby:

 

Föreslår att tråden klistras, eller vad det kallas. :)

 

Jag kör också med The Unarchiver, utöver Mac OS X egna.

Länk till kommentar
Dela på andra webbplatser

+ 1 Toppen! :yeahbaby:

 

Föreslår att tråden klistras, eller vad det kallas. :)

 

Jag kör också med The Unarchiver, utöver Mac OS X egna.

Tack! Ja, Unarchiver är riktigt bra... :ThumbsUp:

Länk till kommentar
Dela på andra webbplatser

Absolut, klistrar, eller som det står , "nitar" tråden

Länk till kommentar
Dela på andra webbplatser

Komletterar med ett par grejjer...

 

Sen finns det ju format som inte det inbyggda programmet kan hantera: .sit .sitx .rar osv.

 

Jag kör med programmet Unarchiver.app (som är gratis) och det täcker upp resten. De har en imponerande lista med olika format som stöds.

 

// ... //

 

Men de 2 programmen (inkl det inbyggda) klarar man sig på. Ser ingen anledning till att köpa ngt annat.

Jo, en anledning att ev använda andra, eller köpa ett komprimeringsprogram är väl avsaknade i det inbyggda "Archive Utility" att kunna lösenordsskydda en zipfil. Men det går också att göra väldigt enkelt och smidigt i Terminalen.

zip -e ...

"-e" är handlern för att lösenordsskydda en mapp/fil.

 

Exempel:

zip -er MinFolder.zip MinFolder

När man trycker på enter får man ange ett lösen ord, och efter nästa enter upprepa det.

Enter password:
Verify password:

[!] När man skriver lösenord i terminal, så syns ingenting - ingenting "verkar" hända.

Är en säkerhetsåtgärd så inte lösenordet hamnar i ngn historik el nåt.

 

 

En variant på det är:

zip -e Minfil.jpg.zip Minfil.jpg
Enter password:
Verify password:

För att öppna filen - bara dubbelklicka på den och ange lösenordet.

 

 

 

Att tänka på när man komprimerar. Det är inte alltid som man får så bländade resultat när man komprimerar en fil. Om man t ex tar en mapp full med JPG-bilder el mp3-filer... så är ju båda redan i s k komprimerade format. Så vinsten blir ju mindre s a s. Men för stora dokument och filer kan man spara otroligt med plats. Att kunna få ner en fil till ≈ 4gb gör ju att man kan få plats med den på en DVD eller en liten USB-sticka

En sak till som kanske inte har så mkt med komprimering i sig att göra, men som komplement till den färdiga filen.

 

Låt säga att man lyckas krympa sin fil väldigt mkt, men man inser att den får ändå inte plats på det stället man hade tänkt sig (CD, DVD, USBsticka, nätlagring osv). Då kan det vara bra att tillfälligt kunna splitta upp sin fil i fler delar.

 

 

Split

Med "split" kan man dela upp stora filer i mindre bitar på ett enkelt sätt.

split -b 680m Minfolder.tar.gz Minfolder.del-

"-b" = hur stor filen skall vara. T ex "-b 100m" gör att varje del blir 100MB. (100k = 100KB). Sen skriver man filens namn och efter det vad varje del ska heta.

 

Så resultatet av det ovan blir:

Minfolder.del-aa
Minfolder.del-ab
Minfolder.del-ac
Minfolder.del-ad
...osv.

...där varje del är 680MB stor. Och får plats på en CD (som exempel).

 

 

Cat

Med "cat" kan man sen putta ihop filerna igen:

cat Minfolder.del-* > Minfolder.tar.gz

"Minfolder.del-*"...

"*" är ett wildcard och motsvarar alla aa, ab, ac, ad, osv.

 

När filen är färdig så är det bara att dubbelklicka på den som vanligt. :crossfingers::yeahbaby:

 

Det kan ta lite olika tid ibland att splitta upp/sammanfoga beroende på hur stor fil man arbetar med.

 

 

 Manualer: split, cat

Länk till kommentar
Dela på andra webbplatser

Lite tankar och tips om komprimering...

 

snip

 

Blev väl lite långt inlägg... :blushing: Men det bjuder jag på. ;)[/size]

 

Tack för ett bra script. Att få det att funka i ett automatorflöde går inte? Jag försökte, se skärmdump.

post-58007-080346900 1360227436_thumb.png

 

 

Edit: Förkortade citatet för att underlätta läsning av tråden. /moderator

Redigerad av Justitia
Länk till kommentar
Dela på andra webbplatser

Tack för ett bra script. Att få det att funka i ett automatorflöde går inte? Jag försökte, se skärmdump.

post-58007-080346900 1360227436_thumb.png

Nej jag har inte heller fått det och funka där... Har iofs inte kört det som på bilden utan låtit sciptet ligga i sin mapp, och med ett alias (så jag kan köra det i terminal med).

 

Började kolla lite (när jag gjorde det (~2011)) om det gick o fixa en tjänst av det, men jag fick annat och pilla med och har inte kollat mer sen dess. Kan sätta mig ngn dag sen och se om man inte kan pilla ihop ngt kul. :ThumbsUp:

 

Jag kör med det i Terminalen som jag beskrev där uppe:

 

"I Terminalen, skriv iZip + ett mellanslag, och dra sen in en mapp där:"

iZip /Users/MittNamn/Desktop/MinFolder

Länk till kommentar
Dela på andra webbplatser

Nej jag har inte heller fått det och funka där... Har iofs inte kört det som på bilden utan låtit sciptet ligga i sin mapp, och med ett alias (så jag kan köra det i terminal med).

 

Började kolla lite (när jag gjorde det (~2011)) om det gick o fixa en tjänst av det, men jag fick annat och pilla med och har inte kollat mer sen dess. Kan sätta mig ngn dag sen och se om man inte kan pilla ihop ngt kul. :ThumbsUp:

 

Jag kör med det i Terminalen som jag beskrev där uppe:

 

"I Terminalen, skriv iZip + ett mellanslag, och dra sen in en mapp där:"

iZip /Users/MittNamn/Desktop/MinFolder

 

Jag är i o f sig ingen "teminalfiende" och kör det gärna i denna, men det hade du kunnat få det att funka även som ett flöde hade det varit suveränt. emoticons.png

Länk till kommentar
Dela på andra webbplatser

Ja, jag skall kika på det... Skall i första försöka få det flödet att jobba mot sh-filen, istället för att baka in hela koden i flödet (eg bara anropa filen istället)... Då kan man både köra det i terminalen, och som service. Var lite grundidén från början - så man inte blir låst till ena alternativet s a s. pclaugh.gif

Länk till kommentar
Dela på andra webbplatser

Jag kör Snöleoparden och har ingen .bash_profile. Jag har skapat en .profile med följande rader:

export CLICOLOR=1

export PATH=~/Applications/Terminalscript:$PATH

 

Så kanske .profile är att föredra?

Redigerad av fred6633
Länk till kommentar
Dela på andra webbplatser

Jag kör Snöleoparden och har ingen .bash_profile. Jag har skapat en .profile med följande rader:

export CLICOLOR=1

export PATH=~/Applications/Terminalscript:$PATH

 

Så kanske .profile är att föredra?

 

Jag testade med att skapa en .bash_profile och byta namn på .profile, och det fungerade lika bra!

Länk till kommentar
Dela på andra webbplatser

Jag kör Snöleoparden och har ingen .bash_profile. Jag har skapat en .profile med följande rader:

export CLICOLOR=1

export PATH=~/Applications/Terminalscript:$PATH

 

Så kanske .profile är att föredra?

Man kan göra mkt kul i den filen, med färger, utsende osv... :)

 

I min har jag även med en rad med "PS1"

PS1="\u@\h \d, \t: \W\$ "

 

Användarnamn@datornamn Wed Feb 13, 12:53:38: ~$

("~" byts till den mapp man är i)

 

 

Jag testade med att skapa en .bash_profile och byta namn på .profile, och det fungerade lika bra!

:yeahbaby:

 

Ja, det finns en del filer man kan ha, som inte är förgjorda. Är oftast bara skapa en ny.

Redigerad av iEricF
Länk till kommentar
Dela på andra webbplatser

Hittade en sån "defaults write" för det inbyggda Archive Utility

 

Den gör väl inte så mkt, men man spar 1 klick. :)

Efter att man packat upp filen går markeras den öppnade mappen isätllet för zipfilen man dubbelklickade på. Så man redan är dit man skall s a s.

 

defaults write com.apple.archiveutility dearchive-reveal-after -bool true

Länk till kommentar
Dela på andra webbplatser

  • 7 months later...

Mycket bra tråd.

 

BetterZip är i min mening den absolut bästa mjukvaran för att hantera komprimerade filer på OS X.

http://macitbetter.com

 

Och jag avråder starkt från att köpa förlegade och långsamma Stuffit.

Alternativt kan man packa med RarMachine, som är en trevlig "wrapper" till RAR. Tyvärr verkar programmet inte utvecklas längre.

 

Se macupdate för alternativa program. https://www.macupdate.com/app/mac/28008/rarify

 

De gånger jag använder unzip via terminal så brukar jag köra följande kommando:

unzip -jo \*.zip -d extracted/

-j junk paths.

-o overwrite existing files without prompting.

-d optional directory to which to extract files.

 

Om du vill du veta mer om unzips möjligheter:

Räcker det med en kortare beskrvivning så skriver du följande:

unzip -h

Men om du vill läsa på vilka fler alternativ som finns så skriver du:

man unzip

Tryck q för att avbryta.

 

Angående att skapa aktiva mappar. Om det strular med Automator, pröva någon av följande:

Hazel - folder actions
http://www.noodlesoft.com/hazel.php

FileSorter - folder actions, free
https://itunes.apple.com/us/app/filesorter/id411279149?mt=12

Redigerad av iSweden
Länk till kommentar
Dela på andra webbplatser

  • 4 years later...

Tänk om alla ändå hade/använde “xz”, så skulle världen vara mkt trevligare. :) Som en skrev en gång - allt annat än tar.xz är slöseri med diskutrymme (el nåt sånt). Och då kan man lika gärna använda zip, typ. Här är en bra sida om det.

Spoiler

function mkxz ()
{
    tar -cvf - --exclude={'.DS_Store','._*'} "$1" | xz -6e > "$1".tar.xz;
}

# anv
mkxz /sökväg/till/fil/el/folder/

“-6e” = hur hårt det komprimeras. 4 är lägre och 9 är extrem (inkl tar en massa RAM) 6 är lagom och e = extrem - så 6e(xterm).

 

Finns med MacPorts, Homebrew, eller här.

 

Vad spar man då? Exempel:

post-64246-0-35074100-1493023550.png

Är ju rätt trevligt när man rensar och gör en backup av det. :kaffe:

Länk till kommentar
Dela på andra webbplatser

7 minuter sedan, modEric säger:

Tänk om alla ändå hade/använde “xz”, så skulle världen vara mkt trevligare. :) Som en skrev en gång - allt annat än tar.xz är slöseri med diskutrymme (el nåt sånt). Och då kan man lika gärna använda zip, typ. Här är en bra sida om det.

  Visa dolt innehåll


function mkxz ()
{
    tar -cvf - --exclude={'.DS_Store','._*'} "$1" | xz -6e > "$1".tar.xz;
}

# anv
mkxz /sökväg/till/fil/el/folder/

“-6e” = hur hårt det komprimeras. 4 är lägre och 9 är extrem (inkl tar en massa RAM) 6 är lagom och e = extrem - så 6e(xterm).

 

Finns med MacPorts, Homebrew, eller här.

Spoiler


Vad spar man då? Exempel:

post-64246-0-35074100-1493023550.png

 

 

Är ju rätt trevligt när man rensar och gör en backup av det. :kaffe:

Vore ju bra om det fanns ett program där man drar och släpper sin mapp i ett fönster och så får man en xz-fil av det. Jag fattar nada av vad den där killen skriver (eller, jag orkar inte sätta mig in i det).

Jag har en bamsig dmg (ett arkiverat användarkonto), kan den bli mindre så här?

Länk till kommentar
Dela på andra webbplatser

1 minut sedan, Alix säger:

Vore ju bra om det fanns ett program där man drar och släpper sin mapp i ett fönster och så får man en xz-fil av det. Jag fattar nada av vad den där killen skriver (eller, jag orkar inte sätta mig in i det).

Jag har en bamsig dmg (ett arkiverat användarkonto), kan den bli mindre så här?

I 1'a spoilern... Om du lägger till funktionen i dina bash_filer (t e x ~/.bash_profile), dvs inte d 2 sista raderna där - startar om terminal och sen anv du det med “mkxz /sökväg/till..../” - el rättare sagr mkxz + mellanslag, och dra in foldern....

Jo, det vore bra. Vet inte om det finns nåt GUI för tarballs... Det finns/fanns ett som heter GUITar: https://www.macupdate.com/app/mac/14503/gui-tar, men det är riktigt gammalt och jag tror inte om xz finns med där. Annars var det ett trevligt program. Provade det lite, men föredrar Terminalen. Har ett litet skript jag kan köra och välja lite olika.

För dmg... den med bzip2 är bättre än den vanliga.

dmg_udbz.png.f2b74174172d007e7c053a4028384ea6.png


Vet inte hur litet “mindre såhär” är, men det borde kunna bli mindre.

Länk till kommentar
Dela på andra webbplatser

12 minuter sedan, modEric säger:

I 1'a spoilern... Om du lägger till funktionen i dina bash_filer (t e x ~/.bash_profile), dvs inte d 2 sista raderna där - startar om terminal och sen anv du det med “mkxz /sökväg/till..../” - el rättare sagr mkxz + mellanslag, och dra in foldern....

Jo, det vore bra. Vet inte om det finns nåt GUI för tarballs... Det finns/fanns ett som heter GUITar: https://www.macupdate.com/app/mac/14503/gui-tar, men det är riktigt gammalt och jag tror inte om xz finns med där. Annars var det ett trevligt program. Provade det lite, men föredrar Terminalen. Har ett litet skript jag kan köra och välja lite olika.

För dmg... den med bzip2 är bättre än den vanliga.

dmg_udbz.png.f2b74174172d007e7c053a4028384ea6.png


Vet inte hur litet “mindre såhär” är, men det borde kunna bli mindre.

Okej, tack för svar. Eftersom jag inte har utrymmesproblem så får zip duga.

Länk till kommentar
Dela på andra webbplatser

2 timmar sedan, Alix säger:

Vore ju bra om det fanns ett program där man drar och släpper sin mapp i ett fönster och så får man en xz-fil av det. Jag fattar nada av vad den där killen skriver (eller, jag orkar inte sätta mig in i det).

Jag har en bamsig dmg (ett arkiverat användarkonto), kan den bli mindre så här?

Automator, välj typen Program, lägg till Verktyg -> Kör kommandotolkskript.

Ändra "Överför indata" till "som argument", klistra in kommandot, jag testade med

for f in "$@"
do
	tar -cv "$f" | gzip > "$f".tar.gz
done

Arkiv -> Exportera.

Klart!

 

Tillägg: for...do...done genererades automatiskt när jag ändrade "Överför indata". Variabelnamnet (f) skiljer sig från modErics namn (1). Se till att det är samma namn överallt.

Redigerad av Mattiasgbg
  • Tack 1
Länk till kommentar
Dela på andra webbplatser

6 minuter sedan, Mattiasgbg säger:

Automator, välj typen Program, lägg till Verktyg -> Kör kommandotolkskript.

Ändra "Överför indata" till "som argument", klistra in kommandot, jag testade med


for f in "$@"
do
	tar -cv "$f" | gzip > "$f".tar.gz
done

Arkiv -> Exportera.

Klart!

 

Tillägg: for...do...done genererades automatiskt när jag ändrade "Överför indata". Variabelnamnet (f) skiljer sig från modErics namn (1). Se till att det är samma namn överallt.

Ja, förutom att det där är tar.gx och tar.xz. =Om man inte skall köra xz, så kan man med fördel använda bzip2 istället

tar -cv "$f" | bzip2 > "$f".tar.bz2

Fast både gz och bz2 kan man köra helt med tar-kommandot. Exempel:

tar -cvzf "${f}".tar.gz --exclude={'.DS_*','._*'} "${f}";

tar -cvjf "${f}".tar.bz2 --exclude={'.DS_*','._*'} "${f}";

# z = gz
# j = bz2
# v = verbose

# --exclude={'.DS_*','._*'}
# ...kan man ju ta bort om man vill

i senare verioner av tar, och bsdtar finns “J” med för att skapa xz direkt, utan att man behöver ha xz installerat. Komprimeringen får man sätta med ENV då: “XZ_OPT=-6e” innan själva tar-kommandot.

Men med 's takt att hålla grejjerna up2date så.... 2050 kanske. :)

 

För att packa upp - byt “c” mot “x”. funkar nog med ‘bunzip” och “gunzip” med. Installerar man xz följer unxz med.

 

Exemplet jag gjorde med xz och pipe (|), gör att det blir mer kompatibelt med macOS.

asd

Länk till kommentar
Dela på andra webbplatser

23 minuter sedan, Mattiasgbg säger:

Automator, välj typen Program, lägg till Verktyg -> Kör kommandotolkskript.

Ändra "Överför indata" till "som argument", klistra in kommandot, jag testade med


for f in "$@"
do
	tar -cv "$f" | gzip > "$f".tar.gz
done

Arkiv -> Exportera.

Klart!

 

Tillägg: for...do...done genererades automatiskt när jag ändrade "Överför indata". Variabelnamnet (f) skiljer sig från modErics namn (1). Se till att det är samma namn överallt.

Tack! Ska testas. Hade ingen tanke på Automator.

Länk till kommentar
Dela på andra webbplatser

2 minuter sedan, modEric säger:

Ja, förutom att det där är tar.gx och tar.xz. =Om man inte skall köra xz, så kan man med fördel använda bzip2 istället


tar -cv "$f" | bzip2 > "$f".tar.bz2

Fast både gz och bz2 kan man köra helt med tar-kommandot. Exempel:


tar -cvzf "${f}".tar.gz --exclude={'.DS_*','._*'} "${f}";

tar -cvjf "${f}".tar.bz2 --exclude={'.DS_*','._*'} "${f}";

# z = gz
# j = bz2
# v = verbose

# --exclude={'.DS_*','._*'}
# ...kan man ju ta bort om man vill

i senare verioner av tar, och bsdtar finns “J” med för att skapa xz direkt, utan att man behöver ha xz installerat. Komprimeringen får man sätta med ENV då: “XZ_OPT=-6e” innan själva tar-kommandot.

Men med 's takt att hålla grejjerna up2date så.... 2050 kanske. :)

 

För att packa upp - byt “c” mot “x”. funkar nog med ‘bunzip” och “gunzip” med. Installerar man xz följer unxz med.

 

Exemplet jag gjorde med xz och pipe (|), gör att det blir mer kompatibelt med macOS.

asd

Nu fattar jag inte plötsligt. Så då kan jag inte använda Automator?

Nåja, det får bli en senare fråga. 

Länk till kommentar
Dela på andra webbplatser

4 minuter sedan, modEric säger:

Ja, förutom att det där är tar.gx och tar.xz. =Om man inte skall köra xz, så kan man med fördel använda bzip2 istället


tar -cv "$f" | bzip2 > "$f".tar.bz2

Fast både gz och bz2 kan man köra helt med tar-kommandot. Exempel:


tar -cvzf "${f}".tar.gz --exclude={'.DS_*','._*'} "${f}";

tar -cvjf "${f}".tar.bz2 --exclude={'.DS_*','._*'} "${f}";

# z = gz
# j = bz2
# v = verbose

# --exclude={'.DS_*','._*'}
# ...kan man ju ta bort om man vill

i senare verioner av tar, och bsdtar finns “J” med för att skapa xz direkt, utan att man behöver ha xz installerat. Komprimeringen får man sätta med ENV då: “XZ_OPT=-6e” innan själva tar-kommandot.

Men med 's takt att hålla grejjerna up2date så.... 2050 kanske. :)

 

För att packa upp - byt “c” mot “x”. funkar nog med ‘bunzip” och “gunzip” med. Installerar man xz följer unxz med.

 

Exemplet jag gjorde med xz och pipe (|), gör att det blir mer kompatibelt med macOS.

asd

Orkade inte installera något, så jag filade bara ihop ett kommando som funkade och bakade in det "appen" för att testa.

Länk till kommentar
Dela på andra webbplatser

4 minuter sedan, Alix säger:

Nu fattar jag inte plötsligt. Så då kan jag inte använda Automator?

Nåja, det får bli en senare fråga. 

De ska du kunna göra, om du först installerar xz, vilket jag inte har. Tar-raden är det som behöver ändras.

Länk till kommentar
Dela på andra webbplatser

 Share



×
×
  • Skapa nytt...