Mover arquivos conforme nomenclatura
Publicado por WILLIAM FELIPE DUTRA ABREU DA SILVA (última atualização em 09/07/2014)
[ Hits: 7.415 ]
Homepage: www.itadmin.com.br
Download 1404738993.5939.script.sh (versão 2)
Script gerado para atender à necessidade solicitada:
http://www.vivaolinux.com.br/topico/Perolas-da-Ostra-(Dicas)/Criando-diretorio-e-Mover-arquivo-1/
Versão 2 - Enviado por Vitor Augusto M. Pio em 07/07/2014
Changelog: Esta nova versão ficou menor e adicionei um arquivo de log, seria útil adicionar o horário de transferência ao log. Vou deixar isto para outro programador que deseja contribuir.
Um abraço e obrigado pelo script!
Download 1404738993.5939.script.sh
#!/bin/bash #---------------------------------------------------------------------- #DATA - 07 DE JANEIRO DE 2014 #AUTOR - WILLIAM FELIPE #EMAIL - WILLIAM.FDBS@GMAIL.COM #OBJETIVO - SUPRIR NECESSIDADE DE MOVER ARQUIVOS CONFORME NOMENCLATURA #ASSOCIADO - PEDIDO VIVAOLINUX #USUARIO - acoscarelli #---------------------------------------------------------------------- #OBS= AJUSTAR CAMINHOS CONFORME NECESSIDADE #Pasta onde ficam os arquivos PDF ARQUIVOS=/tmp/testes/arquivos #Diretorio onde serao criadas as pastas #DIR="/home/diretorio/gestao/" DIR="/tmp/testes/home/diretorio/gestao" #Temporarios TEMP=/tmp/testes/temporarios.txt #Inicio do script ls $ARQUIVOS > $TEMP for i in `cat $TEMP` do VAR1=`echo $i | cut -c1 ` VAR2=`echo $i | cut -c2,3,4 ` VAR3=`echo $i | cut -f2 -d '_' ` VAR4=`echo $i | cut -f3 -d '_' | cut -c6,7,8,9 ` #Verifica se VAR1 = S if [ $VAR1 = "S" ] then #Verifica se o diretorio S existe #Se existir continua, se não cria e continua ls $DIR/$VAR1 2>/dev/null >/dev/null && ( continue ) || ( mkdir -p $DIR/$VAR1 ) if [ $? -eq 0 ] then #Verifica VAR2 if [ $VAR2 = 531 ] then #Verifica se o diretorio 531 existe #Se existir continua, se não cria e continua ls $DIR/$VAR1/$VAR2 2>/dev/null >/dev/null && ( continue ) || ( mkdir -p $DIR/$VAR1/$VAR2 ) if [ $? -eq 0 ] then #Verifica VAR3 if [ $VAR3 = 037 ] then #Verifica se o diretorio 037 existe #Se existir continua, se nao cria e continua ls $DIR/$VAR1/$VAR2/$VAR3 2>/dev/null >/dev/null && ( continue ) || ( mkdir -p $DIR/$VAR1/$VAR2/$VAR3 ) if [ $? -eq 0 ] then #Verifica se diretorio $VAR4 existe #Se existir continua, se nao cria e continua ls $DIR/$VAR1/$VAR2/$VAR3/$VAR4 2>/dev/null >/dev/null && ( continue ) || ( mkdir -p $DIR/$VAR1/$VAR2/$VAR3/$VAR4 ) if [ $? -eq 0 ] then #Move o arquivo para destino final mv $ARQUIVOS/$i $DIR/$VAR1/$VAR2/$VAR3/$VAR4 if [ $? -eq 0 ] then echo "Arquivo $VAR4 movido para $DIR/$VAR1/$VAR2/$VAR3/$VAR4 com sucesso!!!" else echo "ERRO - Erro ao mover arquivo $VAR4 para $DIR/$VAR1/$VAR2/$VAR3/$VAR4, verifique !!!" fi fi fi fi fi fi fi fi done
Calculadora básica em Shell Script
Assistente de conexão Wireless - KDialog
Converte permissões de octal para textual e vice-versa
Backup somente se o notebook estiver conectado à rede wireless
Colorindo o Shell - Código Puro
Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Instalando Grub Customizer no Ubuntu 24.04
Preparando pendrive com GNU/Linux [Corretamente!]
Instalando Google Chrome no Fedora 40
Habilitando a importação de senhas no Firefox
Como corrigir o erro do VirtualBox travar a máquina virtual em tela cheia
Som continua saindo no auto-falante mesmo com headphone, como conserto... (3)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (39)