shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] for para mover arquivos por data


From: Cesar Rodrigues
Subject: Re: [shell-script] for para mover arquivos por data
Date: Thu, 20 Sep 2018 20:05:52 -0300

Então, pessoal... fui pela forma que consegui entender mais e que se adequou perfeitamente para o que eu precisava. 
Usei a forma que o Itamar informou. Adaptei até um sed pra fazer alguns cortes em alguns arquivos que estavam vindo com alguns nomes bem estranhos. 

Passei uns dois dias tentando fazer um loop funcionar e tomei bola. Depois de dois dias resolvi pedir a ajuda de vocês, rs.
Agradeço à todos que contribuíram com um pedaço do código. 

Muito obrigado mesmo!!

Em qui, 20 de set de 2018 às 05:10, Ronie Marcio Marcondes Coelho address@hidden [shell-script] <address@hidden> escreveu:
 

Ola Cesar, boa tarde

Daria pra usar awk pra gerar os comandos:

ls -1 nodejs-????-??-??.gz | awk -F"-" '{ print "mkdir -p /backup/"$2" ; mkdir -p   /backup/"$2"/"$3" ; mkdir -p   /backup/"$2"/"$3"/"substr($4,1,2)";  mv " $0 "  /backup/"$2"/"$3"/"substr($4,1,2)"/"          }'     >   /tmp/distribuiarquivos

chmod +x  /tmp/distribuiarquivos
sh  /tmp/distribuiarquivos
rm  /tmp/distribuiarquivos


A saida no arquivo /tmp/distribuiarquivos  seria:
mkdir -p /backup/2018 ; mkdir -p   /backup/2018/03 ; mkdir -p   /backup/2018/03/31;  mv nodejs-2018-03-31.gz  /backup/2018/03/31/
mkdir -p /backup/2018 ; mkdir -p   /backup/2018/04 ; mkdir -p   /backup/2018/04/26;  mv nodejs-2018-04-26.gz  /backup/2018/04/26/
mkdir -p /backup/2018 ; mkdir -p   /backup/2018/05 ; mkdir -p   /backup/2018/05/25;  mv nodejs-2018-05-25.gz  /backup/2018/05/25/


Boa Sorte
[]s
Ronie

Em 19/09/2018 13:37, Cesar Rodrigues address@hidden [shell-script] escreveu:
 
Boa tarde, galera!

Tô precisando de uma luz pra fazer um script pra mover arquivos por data.
Vamos supor que eu tenha o seguinte diretório: /tmp/archive/.
Dentro do diretório /tmp/archive/, tem vários arquivos com a nomenclatura nome-data, exemplo:
nodejs-2018-05-25.gz / nodejs-2018-04-26.gz / nodejs-2018-03-31.gz etc...

Cada arquivo desse tem que ir pra uma pasta com estrutura do tipo: 
/backup/2018/05/28/ - /backup/2018/03/31/ - /backup/2018/02/20/ e assim por diante.

Ou seja: Cada arquivo tem que ir pra pasta com a mesma data especificada no arquivo.
/backup/2018/05/28/nodejs-2018-05-28.gz
/backup/2018/03/30/nodejs-2018-03-30.gz

Desde já agradeço a ajuda.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]