Alguma vez você salvou um arquivo, talvez um download, e então não conseguiu encontrá-lo? Talvez você o tenha salvo em um diretório diferente ou com um nome incomum.
O comando find
é útil aqui:
find ~ -type f -mtime 0
e mostrará todos os arquivos do seu diretório home
que forão modificados ou criados hoje. Por padrão, find
conta dias a partir da meia-noite, então o valor 0
siginifica hoje.
Você deve ter usado a opção -name
com o find
antes, mas ele pode fazer muito mais. Estas opções podem ser combinadas, então, se o elusivo download foi um arquivo MP3, você pode reduzir a pesquisa com:
find ~ -type f -mtime 0 -iname '*.mp3'
As aspas simples são necessárias para para evitar que o shell fique tentando expandir o coringa, e -iname
torna a combinação insensível ao caso.
Permissões incorretas podem causar erros obscuros algumas vezes. Você pode, por exemplo, ter criado um arquivo no seu diretório pessoal enquanto trabalhava como root
. Para encontrar arquivos e diretórios que não peretencem a você, use:
find ~ ! -user ${USER}
O shell define a variável de ambiente USER
para o usuário atual, e um !
muda o resultado para o próximo teste, então este comando encontra qualquer coisa no atual diretório do usuário que não pertencem a este usuário. Você pode até usar o find
para corrigir permissões
find ~ ! -user $USER -exec sudo chown ${USER}:"{}" \;
A página man
do find
explica o uso de -exec
e muitas outras possibilidades.
Uma resposta em “Encontre arquivos perdidos”
[…] Encontre arquivos perdidos « Tropeçando 17 Faça suas próprias Bash wormholes » […]