Linux: Como posso obter um código de saída diferente do comando find se não forem encontrados arquivos que correspondam ao padrão que usei? [duplicado]

2
    

Esta pergunta já tem uma resposta aqui:

    

Eu tenho um script que executa o próximo comando:

find /storage2/hpfiles_staging/ -name \*.gz -mmin +600

E, em seguida, rsync os arquivos para um local remoto.

Às vezes, o comando find não retorna nenhuma saída (pois não há arquivos com o nome * .gz com idade de 10 minutos ou mais nesse local). Quando isso acontece, eu quero escrever uma mensagem para o log dizendo que não há arquivos lá.

Mas quando executo o comando find , se ele encontra arquivos para transferir ou não, o código de saída do comando find é sempre "0" (a menos que haja um erro de sintaxe, claro) e, portanto, não pode me dar indicação sobre arquivos sendo encontrados naquele local ou não.

Existe alguma opção ou truque para obter um código de saída diferente de 0 se nenhum arquivo foi encontrado pelo comando find ?

Obrigado antecipadamente

    
por Itai Ganot 24.02.2015 / 12:22

1 resposta

3

Eu não acho que você possa afetar o código de saída da pesquisa. Talvez você deva procurar capturar a saída de localizar e usar isso para determinar se algum arquivo foi encontrado.

    
por 24.02.2015 / 12:31

Tags