Gostei da ideia do Alfredo de inverter (rev) e desinverter e vou
aproveitar para uma dica não muito conhecida, que faz parte da caixa de
ferramentas do sed e portanto tb faz parte do material do meu curso
sobre programação Shell. Veja como dá uma simplificada:
*$ ArqInv=$(rev <<< $Arq)
$ ArqNovo=$(sed 's/\./_/2g' <<< $ArqInv | rev)*
O macete a que me refiro é o *2g*, que significa a partir do 2º, global.
Veja:
*$ sed 's/a/X/' <<< abracadabra
*Xbracadabra
*$ sed 's/a/X/2' <<< abracadabra
*abrXcadabra
*$ sed 's/a/X/3' <<< abracadabra
*abracXdabra
*$ sed 's/a/X/3g' <<< abracadabra
*abracXdXbrX
Abraços,
Julio
*» Não tem tempo para fazer um curso presencial?*
*» Na sua cidade não tem nenhum bom curso de Linux?*
*Veja detalhes** em:
**https://www.dicas-l.com.br/educacao/programacao-shell-linux/
<https://www.dicas-l.com.br/educacao/programacao-shell-linux/>*
*
*
*Também damos treinamento em sua empresa*
*em qualquer cidade**, **com certificado **e nota fiscal.*
*
*
Em seg., 20 de set. de 2021 às 14:24, Alfredo Casanova
<atcasanova@gmail.com <mailto:atcasanova@gmail.com>> escreveu:
Sem parar pra bolar algo mirabolante:
filename=Arquivo1-20.09.2021-Prof.Marcelo.xls
newname=$(rev <<< $filename | cut -f2- -d. | rev | sed 's/\./_/g')
ext=$(rev <<< $filename | cut -f1 -d. | rev)
mv "$filename" "$newname.$ext"
On Mon, Sep 20, 2021 at 2:01 PM Marcelo <msalavee@gmail.com
<mailto:msalavee@gmail.com>> wrote:
Boa Tarde,
Tenho um servidor samba que alguns usuários começaram a salvar
arquivos e diretórios com (.) no nome, por exemplo:
Arquivo1-20.09.2021-Prof.Marcelo.xls
Estou querendo bloquear este tipo de arquivo, mas antes preciso
renomeá-los.
gostaria de substituir os (.) pontos no nome por (_)underline e
deixar obviamente o (.) na extensão.
o Nome do arquivo ficaria:
Arquivo1-20_09_2021-Prof_Marcelo.xls
Alguém poderia dar uma dica?
Obrigado,
Marcelo
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
<mailto:shell-script-pt@nongnu.org>
Para se inscrever ou desinscrever acesse:
https://lists.nongnu.org/mailman/listinfo/shell-script-pt
<https://lists.nongnu.org/mailman/listinfo/shell-script-pt>
Para ver os arquivos da lista (mensagens anteriores) e pesquisar
nelas, acesse
https://lists.nongnu.org/archive/html/shell-script-pt/
<https://lists.nongnu.org/archive/html/shell-script-pt/>
NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por
favor utilize somente esta.
--
[]'s
Alfredo Tristão Casanova
Linux User #228230
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
<mailto:shell-script-pt@nongnu.org>
Para se inscrever ou desinscrever acesse:
https://lists.nongnu.org/mailman/listinfo/shell-script-pt
<https://lists.nongnu.org/mailman/listinfo/shell-script-pt>
Para ver os arquivos da lista (mensagens anteriores) e pesquisar
nelas, acesse https://lists.nongnu.org/archive/html/shell-script-pt/
<https://lists.nongnu.org/archive/html/shell-script-pt/>
NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor
utilize somente esta.
_______________________________________________
Lista brasileira de usuários de shell script
Endereço de e-mail da lista: shell-script-pt@nongnu.org
Para se inscrever ou desinscrever acesse:
https://lists.nongnu.org/mailman/listinfo/shell-script-pt
Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas, acesse
https://lists.nongnu.org/archive/html/shell-script-pt/
NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor utilize
somente esta.