Pular para o conteúdo

Extrair arquivos pelo Nautilus com 7z e Yad

Para funcionar, salve este arquivo com um nome qualquer no diretório:

   "~/.gnome2/nautilus-scripts/"

O nome que colocar no arquivo será exibido no menu de contexto do Nautilus.

Para utilizar, basta apenas selecionar os arquivos, clique com o botão direito, opção Scripts, clicar na opção com o nome desse script.
Alysson lacabeza
Hits: 6.004 Categoria: Shell Script Subcategoria: Miscelânea
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Para funcionar, salve este arquivo com um nome qualquer no diretório:

   "~/.gnome2/nautilus-scripts/"

O nome que colocar no arquivo será exibido no menu de contexto do Nautilus.

Para utilizar, basta apenas selecionar os arquivos, clique com o botão direito, opção Scripts, clicar na opção com o nome desse script.
Download yxtractor.sh Enviar nova versão

Esconder código-fonte

#!/bin/bash
# yXtractor - Extrair arquivos pelo Nautilus com 7z e Yad
# Extrai o conteúdo do arquivo no diretório corrente
#
# Autor: Alysson Gonçalves de Azevedo
#
# Para funcionar, salve este arquivo com um nome qualquer no diretório:
#   "~/.gnome2/nautilus-scripts/" 
# O nome que colocar no arquivo será Exibido no menu de contexto do Nautilus.
#
# Para utilizar, basta apenas selecionar os arquivos, clique com o botão direito, opção Scripts, clicar na opção com o nome desse script.

IFS="
"

#NAUTILUS_SCRIPT_SELECTED_FILE_PATHS é a lista de todos os arquivos selecionados, por isso é necessário tratar eles com um "for"
for SELECTED in ${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS}; do
    #Muda o diretório corrente para o diretório passado por parâmetro e então extrai os arquivos la
    [ -d ${SELECTED} ] && cd ${SELECTED} || cd "`dirname "${SELECTED}"`"
    
    #Extensões suportadas pelo 7z
    EXT="zip|rar|7z|7z\.001|tar|gz|bz2|tar.gz|tar.bz2|lzma" #String formatada para regex
    #Lista os arquivos a serem descompactados, se for um arquivo, retorna ele mesmo, se for uma pasta, retorna os arquivos dentro dela
    FILES=`ls ${SELECTED} | grep -E "\.(${EXT})$" | grep -Ev "\.part([1-9][[:digit:]]|[[:digit:]]*(0|[2-9]))\.rar$"`
    #O segundo grep exclui arquivos.partN.rar, onde N não seja 1,01,001 e etc.
    
    #Extrai cada arquivo da lista
    for NOME in ${FILES}; do
        echo "#${NOME##/*/}" #Mostra o nome do arquivo na barra de progresso do yad 
        7z x -y "${NOME}"
    done
done | \
yad --title="yXtractor" --text="Extraindo arquivos..." --progress --pulsate --no-buttons --auto-close --width=300 #--undecorated 

Eu vejo gente morta. Descubra se alguém já morreu!

Coleta de Performance com SAR (systat package)

Procura

smartzip

Testador de MD5

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.