El teu blog de Linux en català

Repara els noms dels fitxers amb caràcters extranys!

Ja que estem en una sèrie d’apunts dedicada a la música, avui us explicaré un petit truc per aquells que tingueu cds gravats amb antics sistemes privatius, i volgueu copiar-vos els arxius o música que contenen als nous sistemes lliures.

Per començar il·lustrem la problemàtica. Sovint, aquests cds gravats en aquests sitemes vells, ens hi apareixen els caràctres anomenats “llatins” de la següent manera

Bj?rk - Greatest Hits - 01 - All Is Full of Love.mp3 (codificació no vàlida)

Un exemple del que seria el directori sencer

nautilus-1

Per solucionar aquest problema, no cal anar canviant els noms un per un, per fer aquesta tasca ja se n’encarregarà el programa nautilus-filename-repairer. Per instal·lar-lo és tan senzill com des d’una terminal esciure la següen ordre

sudo apt-get install nautilus-filename-repairer

I ara només caldrà fer clic amb el botó secundari al fitxer al que se li ha de reparar el nom, i sel·leccionar de la llista el nom correcte

nautilus-2

    • xavi on 9 de Març de 2009 at 19:56

    Reply

    Realment útil, sobretot pels que hem heredat discoteques extensíssimes.

    • guillem on 10 de Març de 2009 at 21:37

    Reply

    Jajaja! La veritat és que sí. Jo des de que vaig descobrir aquest programa sóc molt feliç perquè ja no em fico nerviòs amb les discografies heredades. De vegades ni savia de qui era la peça o el nom que tenia!

    • pol on 15 de Març de 2009 at 13:43

    Reply

    Ep, ara busco un progrma per canviar no només el filename, sinó també el text de dintre, que el necessito! Si me’n sabeu un en el temps que tardi a trobar-lo us estaré agraït, altrament, faré un segon comentari!

    • pol on 15 de Març de 2009 at 13:56

    Reply

    Doncs ja ho he trobat, iconv és la solució. En un terminal:

    iconv –from-code=ISO-8859-1 –to-code=UTF-8 iso.txt > utf.txt

    • guillem on 16 de Març de 2009 at 23:59

    Reply

    Salut Pol!

    Afegir també que pots estalviar-te d’esciure tant amb l’ordre simplificada

    iconv –f=ISO-8859-1 –t=UTF-8 iso.txt > utf.txt

    I per fer el canvi en el mateix fitxer sense que te’n crei un altre

    iconv –f=ISO-8859-1 –t=UTF-8 iso.txt > tmp && mv tmp iso.txt

    També afegir que si vols fer un canvi massiu de fitxers et pot servir

    for i in *.txt
    do
    iconv –f=ISO-8859-1 –t=UTF-8 iso.txt > utf.txt
    done

    Salut!

    • pol on 17 de Març de 2009 at 01:55

    Reply

    Merci!

    =)

    • pol on 14 d'Abril de 2009 at 10:26

    Reply

    Hey, guillem!
    Que ara anava a fer una substitució múltiple de noms de fitxers, concretament passar de test-000000006.jpg a imatge6.ppm. M’estic mirant scripting, i diria que la comanda que deies canviaria el fitxer iso tantes vegades com fitxers *.txt hi ha.

    Diria que la comanda correcta seria:
    for file in *.txt
    do
    iconv –f=ISO-8859-1 –t=UTF-8 $file > utf.txt
    done

    • pol on 14 d'Abril de 2009 at 10:39

    Reply

    Vaja he mirat d’editar el comentari però no me n’he sortit, tot i que l’havia escrit jo!

    Que m’he oblidat de canviar també el segon nom de fitxer:
    for file in *.txt
    do
    iconv –f=ISO-8859-1 –t=UTF-8 $file > utf_$file
    done

Respon a xavi Cancel·la les respostes

Your email address will not be published.