arruma_nomes.pl
Publicado por zé ricardo 21/02/2005
[ Hits: 6.172 ]
É um script bem simples que "arruma" os nomes de mp3.
Está bem comentado, assim cada um pode tirar o que não gostar.
Ele pega os arquivos .mp3 de um diretório e retirar os espaços, vírgulas, firulas e afins.. e deixa tudo em letra minúsculas. Quem gosta de modo texto sabe que é um saco ficar "escapando" os nomes das mp3 e etc.
#!/usr/bin/perl -w # Autor: Zé Ricardo (zehzinho@gmail.com) # # Renomeia os arquivos mp3, de forma que os espacos e caracteres estranhos # sejam removidos # # Uso: ./rightmp3names.pl <dir> # Se "dir" nao for passado, usa-se o diretorio atual # # Para instalar String::ShellQuote use Cpan # cpan (enter) # install String::ShellQuote use strict; use warnings; use String::ShellQuote; # seguranca, "escapa" uma string para o bash use Cwd; # para getcwd() unless ($ARGV[0]) { $dir = getcwd; } else { $dir = $ARGV[0]; # nao vem } unless ($dir =~ /[\/]$/) { $dir .= "/"; } opendir (DIR, $dir) or die $!; my @arquivos = grep /\.mp3$/i, readdir DIR; foreach my $mp3file (@arquivos) { $new_name = $mp3file; $new_name =~ s/\s+/_/g; # tira os espacos $new_name =~ s/_-_/-/g; # tranforma "_-_" em apenas "-" $new_name =~ s/^[-_]+//; # elimina '-' e '_' do inicio $new_name =~ s/&/and/g; # transforma & em "and" $new_name =~ s/[\(\)\[\]]+/_/g; # () e [] viram _ $new_name =~ s/,/_/g; $new_name =~ s/\'+/_/g; # elimina as aspas $new_name =~ s/\`+/_/g; # elimina as crases $new_name =~ s/_+/_/g; # elimina "_" sequenciais $new_name =~ s/-+/-/g; # elimina "-" sequenciais $new_name = lc $new_name; # todas as letras ficam minusculas # faz a modificacao se ouve alteracao if ($new_name ne $mp3file) { $dir = shell_quote ($dir); $mp3file = shell_quote ($mp3file); $new_name = shell_quote ($new_name); system "mv $dir$mp3file $dir$new_name"; print "\n$mp3file virou $new_name"; } } closedir DIR;
script para localizar conteudo de arquivo
Eliminando caracteres indesejados
Inserindo sites em Lista do Squid
Listar arquivos de um diretório.
Script que procura uma palavra em um arquivo.
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
PIP3 - erro ao instalar módulo do mariadb para o Python (2)
converter algoritmo C++ em C? (0)
Falha com leitor de digitais no Ubuntu: sugestões? (0)