Compactando arquivos em lote
Publicado por Sandro Marcell 11/07/2008
[ Hits: 11.943 ]
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
Instalador dos Drivers da NVIDIA para Debian
Remoção completa de gateway para Tivoli Framework
Converter arquivos CBR para PDF
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
E aí? O Warsaw já está funcionando no Debian 13? (12)
copiar library para diretorio /usr/share/..... su com Falha na a... (1)
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (3)









