Pular para o conteúdo

Como adicionar hora atual no nome de um arquivo ou varios.

Responder tópico
  • Denunciar
  • Indicar

1. Como adicionar hora atual no nome de um arquivo ou varios.

Enviado em 06/01/2021 - 15:28h

Boa tarde, estou criando um backup onde terá uma pasta com que será gerado alguns arquivos cotidiano, por exemplo é 0011212.txt, porem quero que ele fique 001121214:15.txt pegando a hora atual sem modificar o nome do arquivo original, lembrando que o a numeração especificada de exemplo ela muda. Estou fazendo desta forma porem não estou tendo exito.

while :; do
ls -la *.QWE
mv *.QWE *$HORA.QWE
cp *.QWE pasta_teste/
sleep 2
done

Agradeço desde já.

Responder tópico

2. Re: Como adicionar hora atual no nome de um arquivo ou varios.

Enviado em 06/01/2021 - 18:58h

Welleson5000 escreveu:

Boa tarde, estou criando um backup onde terá uma pasta com que será gerado alguns arquivos cotidiano, por exemplo é 0011212.txt, porem quero que ele fique 001121214:15.txt pegando a hora atual sem modificar o nome do arquivo original, lembrando que o a numeração especificada de exemplo ela muda. Estou fazendo desta forma porem não estou tendo exito.

while :; do
ls -la *.QWE
mv *.QWE *$HORA.QWE
cp *.QWE pasta_teste/
sleep 2
done
Agradeço desde já.

Boa noite Welleson5000.
Os arquivos que vc quer alterar o nome estão em um diretório especifico?
Somente em um diretório?
O que é esse "QWE" do seu script?
Os arquivos que serão renomeados, tem só números no nome, mais a extensão?
A sua lógica não é correta.....
Esse laço infinito não é necessário, use um laço "for".
Se na distro que usa tem o comando "rename", é bem simples.
______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________


3. Re: Como adicionar hora atual no nome de um arquivo ou varios.

Enviado em 06/01/2021 - 22:43h

Tente
ls | xargs printf "%s-$(date +%H%M)\n"

4. Re: Como adicionar hora atual no nome de um arquivo ou varios.

Enviado em 07/01/2021 - 07:58h

msoliver escreveu:

Welleson5000 escreveu:

Boa tarde, estou criando um backup onde terá uma pasta com que será gerado alguns arquivos cotidiano, por exemplo é 0011212.txt, porem quero que ele fique 001121214:15.txt pegando a hora atual sem modificar o nome do arquivo original, lembrando que o a numeração especificada de exemplo ela muda. Estou fazendo desta forma porem não estou tendo exito.

while :; do
ls -la *.QWE
mv *.QWE *$HORA.QWE
cp *.QWE pasta_teste/
sleep 2
done
Agradeço desde já.

Boa noite Welleson5000.
Os arquivos que vc quer alterar o nome estão em um diretório especifico?
Somente em um diretório?
O que é esse "QWE" do seu script?
Os arquivos que serão renomeados, tem só números no nome, mais a extensão?
A sua lógica não é correta.....
Esse laço infinito não é necessário, use um laço "for".
Se na distro que usa tem o comando "rename", é bem simples.
______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________



Esse arquivo QWE eu fiz apenas para teste, eu esto usando o laço infinito por que o mesmo vai inicializar junto com a maquina e vai ficar sempre verificando se o arquivo como exemplo .QWE foi criado naquela determinada pasta.

5. Re: Como adicionar hora atual no nome de um arquivo ou varios.

Enviado em 07/01/2021 - 16:37h

Vou tentar explicar melhor o que desejo fazer.

Quero fazer um backup de um arquivo conforme o anexo, porem esse arquivo é sobreposto sempre que meu ERP executa uma rotina, quero copiar esse arquivos sempre que ele for modificado, mas sem alterar o nome apenas acrescentar a hora no final antes da extensão do arquivo para a pasta backup.

6. Re: Como adicionar hora atual no nome de um arquivo ou varios.

Enviado em 07/01/2021 - 16:49h

Welleson5000 escreveu:

Vou tentar explicar melhor o que desejo fazer.

Quero fazer um backup de um arquivo conforme o anexo, porem esse arquivo é sobreposto sempre que meu ERP executa uma rotina, quero copiar esse arquivos sempre que ele for modificado, mas sem alterar o nome apenas acrescentar a hora no final antes da extensão do arquivo para a pasta backup.


Talvez seja melhor monitorar o sistema de arquivos e fazer o backup na hora em q for alterado.
https://linuxhint.com/inotofy-rsync-bash-live-backups/

7. Re: Como adicionar hora atual no nome de um arquivo ou varios.

Enviado em 07/01/2021 - 21:02h

Welleson5000 escreveu:

Vou tentar explicar melhor o que desejo fazer.

Quero fazer um backup de um arquivo conforme o anexo, porem esse arquivo é sobreposto sempre que meu ERP executa uma rotina, quero copiar esse arquivos sempre que ele for modificado, mas sem alterar o nome apenas acrescentar a hora no final antes da extensão do arquivo para a pasta backup.

----------------------------------------------------------------------------------------------------
Boa noite Wellesom,
Seguem sugestões:
"Acrescentar" HHMMSS no nome do arquivo.
hms=$(date +%H:%M:%S);
rename -n 's/(^[0-9]{8})(.ETQ$)/$1_'${hms}'$2/' *.ETQ
rename(00010000.ETQ, 00010000_20:11:04.ETQ)
rename(00010001.ETQ, 00010001_20:11:04.ETQ)
rename(00010002.ETQ, 00010002_20:11:04.ETQ)
rename(00010003.ETQ, 00010003_20:11:04.ETQ)
rename(00010004.ETQ, 00010004_20:11:04.ETQ)
rename(00010005.ETQ, 00010005_20:11:04.ETQ)

----------------------------------------------------------------------------------------------------
while :;do
mv /origem/*.ETQ /mnt/backup_etq/
hms=$(date +%H:%M:%S);
cd /mnt/backup_etq/
rename 's/(^[0-9]{8})(.ETQ$)/$1_'${hms}'$2/' *.ETQ
sleep 1;
done
----------------------------------------------------------------------------------------------------
OBS.: rename -n, somente simula, para efetuar a alteração, retire o "-n"
O comando sugerido deve ser executado na pasta onde se encontram os arquivos *.ETQ,
Devido a REGEX "casar" o inicio..do nome com números.
Se vai fazer um looping infinito, sugiro usar a data no seguinte formato:
hms=$(date +%H:%M:%S:%s);
Afim de evitar arquivos com o mesmo nome.....
______________________________________________________________________
Importante: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p'
Att.: Marcelo Oliver
______________________________________________________________________
Nota de esclarecimento:
O comando: lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p',
faz parte da minha assinatura.
O qual, "filtra" a página: "https://www.vivaolinux.com.br/termos-de-uso/";,
Mostrando o seguinte:

Se você sanou sua dúvida ou resolveu um problema a partir de um
tópico criado, é extremamente recomendável que acesse o tópico e
marque-o como "RESOLVIDO". E mais recomendável ainda que você eleja
como melhor resposta a que mais lhe ajudou.


______________________________________________________________________

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder