Como encontrar um arquivo específico e movê-lo para um diretório específico?

4

Como encontrar um arquivo específico e movê-lo para o diretório específico /var/tmp ?

Por exemplo, eu quero encontrar o arquivo 0914_Jul-2014.gz .

Observação: o arquivo 0914_Jul-2014.gz está abaixo dos 300 subdiretórios:

      /usr/../../../../../../../../../../../../../../../../../../0914_Jul-2014.gz

Um exemplo: quando faço uma

find /usr -name '0914_Jul-2014.gz' -exec mv {} /var/tmp

O resultado é

mv: cannot stat: File name too long

erro.

    
por maihabunash 18.12.2014 / 18:06

2 respostas

5

Você pode usar find :

find /usr -name '0914_Jul-2014.gz' -exec mv {} /var/tmp \;

Ou para hierarquias de diretórios extremamente aninhadas

find /usr -name '0914_Jul-2014.gz' -execdir mv {} /var/tmp \;

Embora, como diz a documentação, você deve garantir que a variável de ambiente $PATH não faça referência ao diretório atual (a saber, . ) se você usar -execdir

    
por 18.12.2014 / 18:11
3

Use locate para encontrar o arquivo:

locate <file_name>

Em seguida, use mv para mover o arquivo

mv <location/file_name> <new_location/file_name>
    
por 18.12.2014 / 19:00

Tags