Renomeando arquivos de minusculas para maiusculas e/ou vice-versa.

Você quer/necessita renomear todos os arquivos digamos do tipo .mp3 de um directório independentemente de como eles são nomeados em bash scripting? Então preste atenção no script a seguir ele te trará a luz para tal feito.

Perceba que foi usado o artifício de mudar o valor padrão da variável de ambiente $IFS (Internal Field Separator) que é [espaço][tabulação][nova linha], para um valor que use somente "[nova linha]" como separador para o laço de repetição com fim determinado (for... do... done). Assim, o que estiver entre espaços ou tabulações não será usado com valor de $OLD.

Os nomes de arquivos foram colhidos da listagem de todos os arquivos .mp3 do directório actual independente de como foram escritos (.MP3, .Mp3 etc).

Veja que o mesmo principio poderia ser usado também para arquivos .txt .pdf e por ai vai bastando apenas mudar o primeiro parâmetro do comando ls da variável $LISTA

Exemplificando:

LISTA=$( ls *.[Tt][Xx][Tt] )

Quando o laço principal termina o valor de $IFS é restabelecido ao original.

Note que o comando tr é quem faz a conversão de minúsculo para maiúsculo e o rename bem, ele efectivamente o renomeia, :)

E o resto do script (e/ou vice-versa) eu deixo para vocês implemetarem.

BOA SORTE!!!

Nenhum comentário:

Postar um comentário


Nos reservamos o total direito de publicar ou não os seus comentários sem quaisquer justificativas.