What is the magic trick to not let it put dots on both sides of the dash?
Vamos voltar a isso.
How do I get rid of the dots on both sides of the dash?
Altere seu
set filename=!filename: .-.=-!
declaração para
set filename=!filename:.-.=-!
porque, do jeito que você tem agora, você está procurando (espaço, ponto, traço, ponto), e essa sequência não está presente.
OK, agora,
What is the magic trick to not let it put dots on both sides of the dash?
Basta inverter a ordem das suas declarações :
… =
(e ajustar adequadamente o traço).
set filename=!filename: - =-!
set filename=!filename: =.!
Dessa forma, você elimina os espaços ao redor do painel antes de alterar os espaços entre as palavras para pontos.
“how can I work into the script the lowercase command?”
Bem, você poderia fazer
set filename=!filename:A=a!
set filename=!filename:B=b!
set filename=!filename:C=c!
⋮
que não é muito elegante. Mas tem sido apontado para mim que isso pode ser feito tão bem quanto
set filename=!filename:a=a!
set filename=!filename:b=b!
set filename=!filename:c=c!
⋮
porque a correspondência de sequência :
… =
… é feita de maneira não diferencia maiúsculas de minúsculas
(por exemplo, :q=ent
mudará “sqimQal” para “sentimental”).
Então, adaptando a resposta do Magoo ao Converter nome do arquivo de maiúsculas para baixo… , podemos simplificar isso para
for %%a in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do (
set filename=!filename:%%a=%%a!
)