Forum Pplware

Versão Completa: Bash-Backup, ajuda em bash-shell
Está de momento a ver uma versão reduzida do nosso conteúdo. Ver versão completa com o formato adequado.
Boas pessoal,

estou no momento a desenvolver uma "app"/"script" para automatizar uma ação que normalmente faço manualmente.

Função: fazer cópias integrais de determinadas pastas (definidas pelo utilizador) para uma outra localização (também definida pelo utilizador).

Neste momento tenho um problema,
tenho o seguinte código:

Código:
#!/bin/bash
DEST="/home/webdesign/Desktop/backup/"
find $DEST -maxdepth 1 -type d -mtime +60 -exec rm -rf {} \;

Eu só pretendia que ele me listasse as pastas com mais de 60 dias que se encontram dentro da pasta backup e as que verificasse com essa condição as apagasse.

O "-maxdepth 1" retirou a recursividade do "find", ótimo!

A questão é que a pasta backup está a ser listada também como tendo mais que 60 dias.

Estou a usar o seguinte código para testes mais rápidos:

Código:
#!/bin/bash
DEST="/home/webdesign/Desktop/backup/"
find $DEST -maxdepth 1 -type d -mmin +1 -exec rm -rf {} \;

Que verifica se existem pastas com mais de 1 min.

Alguém que me possa ajudar.

git project: https://github.com/NexuS-Pt/bash-backup
git repo: https://github.com/NexuS-Pt/bash-backup.git
Olá Smile

Experimenta trocar -maxdepth 1 por -mindepth 1.

Ou então excluir o nome do directório,

Código:
#!/bin/bash
DEST="/home/webdesign/Desktop/backup/"
find $DEST -maxdepth 1 -type d -mtime +60 -not -iname "backup" -exec rm -rf {} \;
@nioxys,

parace que a parte de ignorar o nome da pasta onde me encontro a trabalhar é a melhor solução Big Grin

no caso de -mindepth 1 acho que não é o que pretendia, pois ele inverte a leitura, e começa a ler fora da pasta onde quero, em vez do que pretendo que é dentro.

Mas obrigado, foste grande ajuda para eu terminar isto Big Grin
De nada. Smile
 
URL's de Referência