Olá Jamille,
Acho que o que vc quer fazer é isso:
#!/bin/bash
origem=/x/y/z/ # a base do diretório q voce quer ignorar
destino=$PWD/ # onde vai fazer o backup, por exemplo /backups/janeiro/
while read i; do
diretorio="${destino}${i/$origem}" # Tira o /x/y/z/
echo mkdir -p "$diretorio"
echo cp -ar "$i/*" "$diretorio"
# simplesmente apague os "echos" se depois de executar
# algumas vezes lhe parecer que os comandos
# farão exatamente o que vc quer
done < /a/b/c/opcoes.txt # para ler seq. as linhas do arquivo opcoes.txt
# é melhor usar este tipo de estrutura para ler o arquivo
# ao invés do cat, porque se algum diretório tiver espaços
# em branco, acontecerá um erro
# usar cp -a é uma opção interessante para backups, veja nos manuais!
Espero ter ajudado, abraços!
Leandro
Jamille Komata dos Santos escreveu:
Boa tarde, quero saber se alguém pode me ajudar...
é o seguinte, estou quebrando a cabeça...com um script
simples...Segue a função, onde estou tendo problemas
Tenho um arquivo.txt contendo uma lista de diretórios
/x/y/z/primeiro/backups
/x/y/z/segundo/backups
/x/y/z/terceiro/backups
Preciso ler esse arquivo, e copiar o conteúdo destes
diretórios listados em um diretório escolhido em outra
função com a seguinte estrutura:
primeiro/backups, segundo/backups e assim por
diante...
Desta forma que eu fiz, ele cria no diretório
escolhido
as estruturas, mas copia todo o conteúdo só no
primeiro diretório...
O que posso fazer?
Obrigada
Jamille
copia () {
while true
do
LISTA=$(cat /a/b/c/opcoes.txt)
cd $subdir #(diretório escolhido em outra função)
echo "O backup será copiado no diretório: $(pwd)"
caminho=/x/y/z
PARTE=$(echo $LISTA | sed -e 's:/x/y/z/::g')
mkdir -p $PARTE
chmod -R 777 *
for i in $LISTA
do
cd $subdir/$PARTE
cp -R $i .
done
read zzz
echo ''
echo "Copiado!"
echo ''
clear
break
done
}
---------------------------------------------------------------------------
Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br
Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utilização da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html