Mapear "untar" para tar xvfz?

14

Como posso mapear 'untar' como um comando para 'tar -xvfz'? Desculpe, mas quase sempre esqueço os argumentos necessários para 'tar' para esta operação.

meder omuraliev
fonte

Respostas:

25

alias untar='tar -xvzf'

Coloque no arquivo .bashrc para persistir nas sessões de logins / shell ou no arquivo /etc/bash.bashrc para persistir nos logins de todos os usuários do sistema.

John Ledbetter
fonte
5
Dependendo do seu sistema operacional, você pode deixar de fora o parâmetro -z. Pelo menos de alcatrão debian detecta automaticamente o tipo de compressão e usando -z em um arquivo tar que não é comprimido com gzip causa um erro lá
Caotic
Além disso, a opção -z é uma extensão GNU.
Richard Hoskins
1
@Richard: subby adicionou a tag Linux @ledbettj: z na opção desnecessária em gnu tar recente (<4 anos, pelo menos), é tratada de forma automática e funciona bem se não houver gzip ou se foi compactado em vez disso. Também "-" é desnecessário e imprime um aviso em algumas ocasiões.
NiXar 20/09/09
19

Você também pode estar interessado no seguinte:

x(){
    if [ -f $1 ] ; then
            case $1 in
                    *.tar.bz2)   tar xvjf $1    ;;
                    *.tar.gz)    tar xvzf $1    ;;
                    *.bz2)       bunzip2 $1     ;;
                    *.rar)       unrar x $1     ;;
                    *.gz)        gunzip $1      ;;
                    *.tar)       tar xvf $1     ;;
                    *.tbz2)      tar xvjf $1    ;;
                    *.tgz)       tar xvzf $1    ;;
                    *.zip)       unzip $1       ;;
                    *.Z)         uncompress $1  ;;
                    *.7z)        7z x $1        ;;
                    *)           echo "Unable to extract '$1'" ;;
            esac
    else
            echo "'$1' is not a valid file"
    fi
}

Com o código acima no seu .bashrc, digite um x seguido de um nome de arquivo extrairá a maioria dos arquivos encontrados (assumindo que você tenha os pacotes necessários para extrair esse tipo de arquivo).

NOTA: Este código foi ligeiramente modificado em relação ao que encontrei aqui há muito tempo.

Richie Marquez
fonte
1
Uau. isso é demais também.
meder omuraliev
.rar foi incluído duas vezes. Eu não acho que a segunda versão será executada. Ou será?
Wolf
Minhas desculpas, a segunda linha * .rar não deve estar lá; isso nunca será executado.
Richie Marquez
Com o catchall no final do bloco do caso, o outro bloco será acionado?
Killermist
2

Estou sempre lembrando-lo, dizendo em voz alta:
alcatrão e X trato Z ip F ile V erbose

Lobo
fonte
1
Para mim conscientemente lembrar este não é um problema porque os meus dedos da mão esquerda "automaticamente" chegar a "zxfv" ... :)
Jonik
@Jonik tão verdadeiro ^^
Oskar Duveborn
1

Você deve tentar dtrx- ele elaborará os argumentos corretos para muitos tipos de arquivos, incluindo "tar, zip, cpio, deb, rpm, gem, 7z, cab, rar, gz, bz2, lzma, xz e muitos tipos de arquivos". arquivos exe, incluindo arquivos do Microsoft Cabinet, arquivos InstallShield e arquivos zip com extração automática ". Ele também coloca o conteúdo em um único diretório, independentemente de o arquivo ter sido compactado assim ou não.

TRS-80
fonte
Nem mesmo nos repositórios do Ubuntu. Não é uma ótima maneira de instalação!
Lakshman Prasad
Ele foi adicionado apenas ao Debian no início deste ano, portanto é apenas no karmic, mas você deve poder instalar o .deb no jaunty sem problemas.
TRS-80
1

Ninguém mais usa uma ferramenta ? É uma ferramenta de linha de comando para arquivamento e extração independente de formato.

Para descompactar qualquer arquivo suportado: aunpack archive.zip Para compactar arquivos em qualquer arquivo suportado: apack archive.tar.bz2 *.txt Para listar arquivos em qualquer arquivo suportado:als archive.tgz

Não me lembro da última vez em que usei diretamente qualquer ferramenta específica de arquivamento.

Ryan C. Thompson
fonte