Extraia arquivos facilmente

Se você é como eu e nunca consegue se lembrar de qual comando e opções usar para extrair um arquivo e usa o shell interativo amigável (embora não seja difícil converter para outros shells), então você gostará disso .

É uma função para extrair arquivos com base na extensão.

Exemplo de utilização: extract foo.tar.gz bar.zip baz.bz2 qux.rar.

Salve-o como ~ / .config / fish / functions / extract.fish

function extract --description "Expand or extract bundled & compressed files"
for file in $argv
if test -f $file
echo
-s "Extracting " (set_color --bold blue) $file (set_color normal)
switch $file
case *.tar
tar
-xvf $file
case *.tar.bz2 *.tbz2
tar
-jxvf $file
case *.tar.gz *.tgz
tar
-zxvf $file
case *.bz2
bunzip2 $file

# Can also use: bzip2 -d $file
case *.gz
gunzip $file

case *.rar
unrar x $file

case *.zip *.ZIP
unzip $file

case *.pax
pax
-r < $file
case '*'
echo
"Extension not recognized, cannot extract $file"
end
else
echo
"$file is not a valid file"
end
end
end

Quer melhorar? Envie-me um pedido de pull!

Há um ótimo tutorial sobre peixes disponível se você não estiver familiarizado com a sintaxe.