Compactando arquivos em lote
Publicado por Sandro Marcell 11/07/2008
[ Hits: 11.569 ]
Homepage: http://sanmarcell.wordpress.com
Compacte vários arquivos e diretórios de uma só vez. Arquivos comuns são
compactados no formato .gz e diretórios no formato .tar.gz
#!/bin/zsh ## Lote.sh - Shell script para compactação de arquivos em lote ## Escrito por: Sandro Marcell P. Barbosa (Boa Vista - Roraima) ## E-mail: sandro_marcell@yahoo.com.br ## Slackware GNU/Linux 10.1.0 # Este script compacta arquivos e diretórios em lote. # São necessários: Gzip e Tar. # É possível o uso do metacaractere (*). # Uso: nome_script arquivo1 arquivo2 [arquivoN] # Realçando a saída do comando 'print': Print () print '\e[1m'"$*" ; tput sgr0 # Checa se o usuário passou algum parâmetro: [[ $# -eq 0 ]] && Print ">>> Uso: $(basename $0) arquivo1 [arquivoN]" && bye # Início do laço 'for': for A do # O arquivo existe? [[ ! -a $A ]] && Print "> Arquivo ou diretório não encontrado!" && continue # O usuário pode compactá-lo? [[ ! -w $A ]] && Print "> Sem permissão para compactar!" && continue # Checando se o arquivo é um diretório ou não: if [[ -d $A ]] { # Início da compactação do(s) diretório(s): ls $A | xargs tar -c -i -f >(gzip -q -f -9 > $A.tar.gz) \ $A > /dev/null 2>&1 Print "> Diretório compactado!" } else { # Como o(s) arquivo(s) não é(são) diretório(s), logo: ls $A | xargs gzip -q -f -9 $A > /dev/null 2>&1 Print "> Arquivo compactado!" continue } done ## Data de criação deste script: Qua 25/04/2007 às 19:17:25
Slackware Interface Install - Instalação de Interfaces gráficas no Slackware
InstallTXZ - converte e instala pacotes do Slackware no Debian
Apagar arquivos recursivamente de um diretório pela extensão
Agora temos uma assistente virtual no fórum!!! (247)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
iso de sistema 32 bit em atividade (18)
erro ao clonar repo github (11)