No bash:
cd user
for i in *; do
for j in $i/*; do
for k in $j/*; do
mv $k 'basename $j'.'basename $k'
done
done
done
Eu tenho um projeto com 500 mil usuários no CentOS. A estrutura do arquivo / diretório de imagens foi configurada assim (sim ... eu sei):
user/0070/
este é o ID do usuário / 1000, para que todos os usuários no intervalo de [70000-70999] estejam dentro desse diretório user/0070/70909/
este é o ID do usuário user/0070/70909/p.jpg
imagem do perfil (100x100) user/0070/70909/x.jpg
imagem em tamanho total Estou movendo tudo para um CDN, então preciso converter essa estrutura em:
user/70909.p.jpg
imagem do perfil (100x100) user/70909.x.jpg
imagem em tamanho total Naturalmente, a única maneira de conseguir isso em um período de tempo é executar um script que renomeie e mova todos os arquivos dentro de um único diretório. Alguma ideia? Obrigado!