Använd terminalen för att hantera arkiv

12 januari 2010

Att använda terminalen för att hantera arkiv har aldrig varit min starka sida, just därför har jag tagit mig i kragen och läst en massa färggranna manualer och tagit lite hjälp av google om hur man hanterar arkiv via terminalen.

Om du tycker att jag gjort något galet eller om det finns enklare/bättre alternativ får du gärna tipsa om det.

Min personliga favorit gällande komprimeringsformat är 7z, just för att det är baserat på öppen källkod och har en hög komprimeringsgrad. Dock kan inte 7z bevara rättigheterna för ägaren och gruppen i Linux, vill du behålla rättigheterna kan du skapa ett tar-arkiv av filen/mappen innan du skapar ett 7z-arkiv.

För att kunna hantera 7z- och RAR-filer behöver vi installera två paket:

sudo aptitude install p7zip unrar

Packa upp arkiv

7z:

p7zip -d fil.7z

bz2:

bunzip2 -dk fil.bz2

gz:

gunzip -c fil.gz >fil

lzma:

unlzma -k fil.lzma

tar:

tar xf fil.tar

tar.bz2:

tar jxvf fil.tar.bz2

tar.gz:

tar zxvf fil.tar.gz

zip:

unzip fil.zip

rar:

unrar x fil.rar

Skapa arkiv

7z:

7zr a fil.7z fil

bz2:

bunzip2 -zk fil

gz:

gzip -c fil > fil.gz

lzma:

lzma -9kv fil

tar:

tar cvf fil.tar fil

tar.bz2:

tar -cjvf fil.tar.bz2 fil

tar.gz:

tar czf fil.tar.gz fil

zip:

zip fil.zip fil

Dela med dig

RSS Twitter Epost Facebook Delicious Epost

Liknande Inlägg

7 kommentarer

  1. [...] terminalen för att hantera arkiv Använd terminalen för att hantera arkiv via Planet Ubuntu [...]

  2. Julian Kylander skriver:

    Här är ett bash-alias om man inte orkar komma ihåg allt det där:

    extract () {
    if [ -f $1 ] ; then
    case $1 in
    *.tar.bz2) tar xjf $1 ;;
    *.tar.gz) tar xzf $1 ;;
    *.bz2) bunzip2 $1 ;;
    *.rar) rar x $1 ;;
    *.gz) gunzip $1 ;;
    *.tar) tar xf $1 ;;
    *.tbz2) tar xjf $1 ;;
    *.tgz) tar xzf $1 ;;
    *.zip) unzip $1 ;;
    *.Z) uncompress $1 ;;
    *.7z) 7z x $1 ;;
    *) echo "'$1' cannot be extracted via extract()" ;;
    esac
    else
    echo "'$1' is not a valid file"
    fi
    }

    Det kan lätt ändra om till att komprimera också..

  3. daoo skriver:

    Jag kan tippsa om atool, som är väldigt smidigt om man inte orkar lära sig allt detta (http://www.nongnu.org/atool/). Kan installeras med apt-get install atool. Sen är det bara att använda tex "aunpack arkiv.ext" för att packa upp en fil eller apack för att skapa ett arkiv. Men för att hantera 7z och rar behöver man fortfarande installera: p7zip och unrar.

  4. Magnus Hedman skriver:

    Pipes är smidiga när det kommer till att kombinera tar med olika komprimerare, och låter en använda färre (mer standardiserade) flaggor vilket underlättar när man sitter vid andra Unixsystem som inte kommer med GNU tar:

    (~ $) tar -cf - x/ | gzip -9 > x.tgz
    (~ $) gzip -cd x.tgz | tar -xf -

  5. Loofy skriver:

    Ofta vill man väl oxå kunna packa hela kataloger... har för mig det är ytterligare en option man skall välja i dessa fall?

  6. Hund skriver:

    @Loofy: Det är sant, vissa kräver ett extra val då. Ska se över det. :)

  7. mekApel skriver:

    själv använder jag unp. Finns precis som atool i reposarna. Enda fördelen mot atool är väl att det är färre bokstäver och färre kommandon att komma ihåg.

    unp och ucat mot adiff, arepack, apack, asliperyslopp, als, adans acocacola etc etc etc etc. :D

Lämna ett svar