Renomeando um arquivo.csv [RESOLVIDO]

1. Renomeando um arquivo.csv [RESOLVIDO]

thiago
lacerdat25

(usa Red Hat)

Enviado em 06/10/2019 - 08:32h

Caros,

Criei um scrip que coleta um arquivo de uma pasta compartilhada windows, com a funcionalidade de renomear o mesmo e enviar ele para um S3.

Preciso de um help para renomear esse arquivo, pois o nome desse arquivo tem que ser "ARQ-datadiahora" EX: ARQ-06-10-2019 08:25.csv

Não estou conseguindo. Minha lógica está furada e não sei onde estou errando!

Como podem ver, sou iniciante no mundo linux.

Segue abaixo meu bash.

#!/bin/bash

data=$(date "+%d-%m-%Y %H:%M:%S") #data hora
caminho="/mnt/pasta/" #caminho onde estão os arquivos

listArq=$(ls "$caminho" | grep arq.csv) #listando os arquivos. Nesse caso estou testando somente 1

c=$(mv "$listArq" ARQ-${data}.csv) #renomeando o arquivo

echo "$c"

Obrigado!


  


2. MELHOR RESPOSTA

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 09/10/2019 - 00:46h

lacerdat25 escreveu:

Olá Marcelo Oliver,
Deu certo, mas são 2 arquivos.
Para mais que 1 não dá correto, poderia me dar uma luz?
Valeu!


Segue a luz e a solução. . . rsrsrs
Pois eh Lacerda...
O titulo eh "RENOMEANDO UM ARQUIVO.CSV", achei estranho, mas, cada um com sua mania, rsrsrs
Sabia que para mais que um arq daria errado....
Segue para vários arquivos.
#!/bin/bash
total=$(find /mnt/pasta/ -maxdepth 1 -iname "*.csv"|wc -l)
N=1;
for arq in $(find /mnt/pasta/ -maxdepth 1 -iname "*.csv");do
data=$(date "+%x_%X:%3N");
#formato da data: 09-10-2019_00:15:00:999 dd-mm-yyyy_hh:mm:ss:milisec
mv "${arq}" ARQ_${NN}_${data}.csv #Renomeia o arquivo para ARQ_01_dd-mm-yyyy_hh:mm:ss:ms.csv, ARQ_02_dd-mm-yyyy_hh:mm:ss:ms.csv, ...;
let N++;
NN=$(printf "%0${total}d" $N); #Todos numeradores (NN) com o mesmo numero de dígitos.
done

Não esqueça de marcar o tópico como resolvido e escolher A MELHOR RESPOSTA....
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver

3. Re: Renomeando um arquivo.csv

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 06/10/2019 - 19:30h

lacerdat25 escreveu:

Caros,

Criei um scrip que coleta um arquivo de uma pasta compartilhada windows, com a funcionalidade de renomear o mesmo e enviar ele para um S3.

Preciso de um help para renomear esse arquivo, pois o nome desse arquivo tem que ser "ARQ-datadiahora" EX: ARQ-06-10-2019 08:25.csv

Não estou conseguindo. Minha lógica está furada e não sei onde estou errando!

Como podem ver, sou iniciante no mundo linux.

Segue abaixo meu bash.

#!/bin/bash

data=$(date "+%d%m%Y_%H%M%S")
caminho="/mnt/pasta/" #caminho onde estão os arquivos

listArq="${caminho}arq.csv" #Definindo o arquivo. #Se é somente um, descarte o ls e o grep.
mv "$listArq" ARQ-${data}.csv #renomeando o arquivo

Obrigado!

Boa noite Lacerda.
A correção foi feita no seu Script.

Obs.:
Se a intenção é renomear um único arquivo,
Faça direto.
data=$(date "+%d%m%Y_%H%M%S")  
mv /mnt/pasta/arq.csv ARQ_$(data).csv


Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver


4. Re: Renomeando um arquivo.csv [RESOLVIDO]

thiago
lacerdat25

(usa Red Hat)

Enviado em 08/10/2019 - 23:05h

Olá Marcelo Oliver,

Deu certo, mas são 2 arquivos. Para mais que 1 não dá correto, poderia me dar uma luz?

Valeu!


5. Re: Renomeando um arquivo.csv [RESOLVIDO]

thiago
lacerdat25

(usa Red Hat)

Enviado em 11/10/2019 - 23:30h

Perfeito Marcelo!

Muito obrigado pela ajuda! Um dia espero ter essa lógica e esse conhecimento para scripts.


6. Re: Renomeando um arquivo.csv [RESOLVIDO]

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 12/10/2019 - 00:18h


lacerdat25 escreveu:

Perfeito Marcelo!

Muito obrigado pela ajuda! Um dia espero ter essa lógica e esse conhecimento para scripts.

Por nada, Lacerda...
Se não for pedir muito....
Marque o tópico como resolvido e escolha A MELHOR RESPOSTA....
Assim ganho uns pontinhos, o que incentiva a continuar colaborando, compartilhando conhecimento....

Importante: echo -e "$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')"
Att.: Marcelo Oliver






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts