Copiar subdiretório presente em vários diretórios
Publicado por Caio Henrique Oliveira Rodrigues (última atualização em 18/05/2015)
[ Hits: 3.033 ]
Essa dica de copiar subdiretório surgiu quando me pediram para enviar um relatório do ano inteiro especificando apenas um usuário.
O Sarg gera diariamente com todos os usuários, minha estrutura do Sarg é assim: /var/www/sarg/2015May14-2015May14/usuárioX/
Para não ter que entrar diretório por diretório para copiar os logs do usuárioX decidi criar esse script, que copia todos os logs apenas do usuárioX sem alterar a estrutura dos diretórios.
Já vi algumas pessoas com essa mesma necessidade.
Sou iniciante ainda no mundo Linux, se tiver alguma coisa que possa melhorar comentem aí, enfim, segue abaixo o script.
#!/bin/bash USUARIO=usuarioX # especefica qual usuario ou ip você quer copiar os logs de acesso TMP=/tmp/temp.txt DIR=/tmp/listas SARG=/var/www/sarg # faz a busca de todos os diretórios que contem os dias acessados do usuário espeficiado e armazena no em um arquivo temporario find $SARG -name $USUARIO -type d > $TMP #Identifica quantas linhas o arquivo temporario possui para para que possa fazer estrutura de repetição QTLINHA=$(wc -l $TMP | awk '{ print $1 }') echo $QTLINHA #Mostra quantos subdiretórios serão copiados a=1 #ira entrar dentro desse while e copiar o diretório correspondente, percorrendo linha por linha while [ $a -lt $QTLINHA ]; do COPIA=$(cat $TMP | head -n $a | tail -n 1) #Armazena o diretório a ser criado com a linha correspondente mkdir -p $DIR$COPIA #Cria a estrutura de diretório corresponde a cada linha #Entra e volta um nível de diretório para que nao duplique o subdiretorio cd $DIR$COPIA cd .. #Copia a pasta do usuário especificado cp -Rap $COPIA . let a=$a+1 done #finaliza while rm -Rf $TMP
Instalando BeEF Framework no Ubuntu
Nenhum comentário foi encontrado.
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)
Slackpkg+ (Slackpkg Plus) está de volta!
Como dividir duas janelas igualmente e lado-a-lado na sua tela
Será possível instalar Linux Mint LMDE em Sony Vaio? (18)
O livro "Linux - Guia do Administrador do Sistema (Rubem E. Ferre... (1)
Como redefinir o diretório Home? (2)
Posso instalar usar o grub sem ter linux instalado, para iniciar o win... (2)
Ocomon 6.0.1 - Problemas ao editar configurações estendidas (6)