Como mover arquivos (imagens) para outros diretórios com base nas datas dos arquivos

0

Eu tenho um diretório (currdir) com 24000 imagens em um servidor centos / cpanel. Eu quero dividir este diretório, movendo imagens deste diretório em outros diretórios (ou subdiretórios dentro currdir) com base nas datas da imagem.

Como fazer isso acontecer?

    
por R.Ta 23.01.2016 / 17:16

1 resposta

2

Isto irá executar um comando find que produz um comando shell movendo o arquivo em um diretório baseado na última hora de alteração do arquivo. Ele irá criar o alvo no diretório on the fly (que pode reclamar que ele já existe). Os comandos gerados são direcionados diretamente para um interpretador de shell.

find -maxdepth 1 -type f -printf "mkdir -p %CY/%Cm/%Cd ; mv '%f'  %CY/%Cm/%Cd\n" | /bin/sh

Observe que isso pode não ser a maneira mais eficiente de fazer isso, pois criará muitos processos para criar arquivos de movimentação de diretórios e anúncios. Como é para uma execução one-shot, eu não me concentraria muito nisso ...

    
por 23.01.2016 / 17:55

Tags