find é a substituição completa, mas para operações simples em arquivos no diretório atual, esse sh -script pode ser bastante útil (e mais fácil de ler / escrever):
for file in *.jpg; do
echo "do something with $file"
done
desculpe se isso for solicitado antes, mas fiquei curioso sobre qual é o comando Linux equivalente de forfiles.exe no Windows? Isso veio à minha mente quando vi esta pergunta
find é a substituição completa, mas para operações simples em arquivos no diretório atual, esse sh -script pode ser bastante útil (e mais fácil de ler / escrever):
for file in *.jpg; do
echo "do something with $file"
done
Acho que encontrar fornece a funcionalidade que os arquivos forficos oferecem.
O comando find faz o que você deseja. Aqui está um exemplo:
find /mnt/Pictures -name '*.jpg' \! -mtime 7 -exec rm {} \;
Isso excluirá todos os arquivos jpg de /mnt/Pictures , que não foram modificados nos últimos 7 dias (168 horas). Se você não se importa com o caso dos nomes de arquivos, use -iname em vez de -name .
Aqui está uma correspondência entre os parâmetros de forfiles e os parâmetros de find :
/p - > o caminho é o primeiro argumento do find /s - > Por padrão, encontre pesquisas em todos os subdiretórios. Para desabilitar isso, use o parâmetro -maxdepth com 1. /c - > %código%. Também substitua -exec por @file e não esqueça de terminar o comando com {} (muitos iniciantes são bit por esse erro) \; - > %código%. Os dados do arquivo foram modificados pela última vez /d * há 24 horas. Você pode criar uma tarefa cron que use find com os argumentos apropriados, por exemplo, -mtime +7