# [RISOLTO] File persi durante la copia da HD locale a HD ntfs

## fbcyborg

Sul mio hard disk ho una 80ina di GB di dati, che voglio trasferire su un disco esterno collegato via SATA esterno.

Ho montato il disco usando ntfs3g, e se copio i dati usando dolphin ottengo che qualche file non può essere scritto nella dir di destinazione.

A causa di questo problema mi trovo con molti files che non vengono copiati.

Il disco esterno l'ho formattato usando mkfs.ntfs.

Copiando uno di questi files incriminati a mano, usando cp ottengo questo errore:

```
cp: cannot stat `nome del file': Invalid or incomplete multibyte or wide character
```

Non capisco a cosa possa essere dovuto.

Se copio questo file in un'altra locazione di memoria su disco locale, non ci sono problemi.

Non so se è un problema di codifica, ma anche se fosse, non saprei come risolvere.

Nell'fstab ho questa riga:

```
/dev/sataext            /mnt/sataext                    ntfs-3g         locale=it_IT.ISO-8859-1,user,uid=1000,gid=6     0 0
```

Quale può essere il problema? Non vorrei perdere alcun dato.

----------

## Apetrini

Mmmmm... provato a usare utf8 come codifica ntfs ???

----------

## fbcyborg

No non ho provato.

Ma con UTF-8, e quindi impostando l'fstab così: 

 *Quote:*   

> /dev/sataext            /mnt/sataext                    ntfs-3g         locale=en_US.UTF-8,user,uid=1000,gid=6     0 0

 

Non rischio di incasinare i nomi dei files che hanno lettere accentate?

(Chiedo giusto perché ho un dubbio...)

----------

## fbcyborg

Intanto ho scoperto che i files che hanno lettere accentate non vengono copiati e che montando il disco con la codifica en_US.UTF-8 e con la codifica it_IT.ISO-8859-15 ancora non risolvo il problema.

----------

## fbcyborg

Finalmente ho risolto impostando l'/etc/fstab come segue, relativamente al mio disco esterno:

```
/dev/sataext        /mnt/sataext            ntfs-3g     noauto,locale=en_US.ISO-8859-1,user,uid=1000,gid=6  0 0
```

La codifica corretta era appunto en_US.ISO-8859-1, dal momento che:

```
$ echo $LANG

en_US.ISO-8859-1
```

A questo punto non c'è più problema con le lettere accentate e file con nomi lunghi.

----------

## fbcyborg

Ritorno su questo thread perché ultimamente sto avendo questo problema di nuovo.

Se configuro la riga del post precedente nell'/etc/fstab va bene, però il problema è l'automounter di KDE. Dovrei passare le stesse opzioni anche a lui.

Si può fare, in modo che anche in questa circostanza, si possano creare files con lettere accentate?

----------

## djinnZ

-kde sta diventando una croce con questa faccenda delle tabelle codici.

Ho il problema degli archivi zip/rar creati sotto versioni antiquate di un certo sistema inoperativo; persino sui file creati da me (quindi senza spazi, apostrofi e quant'altro, limitando al minimo le accentate) trovo problemi alle volte.

Hai mai pensato di usare preventivamente convmv sul filesystem di origine? Possibile che nomi che ritieni essere in utf8 siano in realtà in 8859-15 o 1.

Nemmeno io ho trovato modo di intravedere la luce. Ma gnome è gnome... mi par proprio di caricarmi la scimmia sulla schiena...  :Twisted Evil: 

----------

## fbcyborg

Trovo assurdo e impensabile che non sia possibile configurare queste cose. Alla faccia dell'open source e dell'alta configurabilità.

Tempo fa discutei anche sul fatto di questi nomi assurdi che vengono dati ai mountpoint dei device sotto /media.

Comunque no, non ho pensato ad utilizzare quel convmv (a parte che non l'avevo mai sentito prima), perché non so nemmeno se faccia al mio caso e se rischi di farmi casini assurdi sui nomi dei file, che non voglio siano cambiati.

E gnome non lo metto nemmeno se mi pagano sul mio PC personale.  :Wink: 

----------

## djinnZ

basta che ometti --nostest e non fa altro che mostrarti quello che intende fare, oppure -i e devi confermare la rinomina caso per caso. Ed è menzionato nella guida ufficiale per UTF-8 ...  :Twisted Evil: 

Almeno ti dovrebbe far escludere problemi nei nomi dei file.

Li puoi spendere questi due minuti a compilarlo ed impegnare quella manciata di byte ...

Non so a quali nomi assurdi ti riferisci, mi trovo tutto montato con /media/<label>. Dato che non creo partizioni senza impostare la label mai avuto problemi. kde 4.6.5 a default.

----------

## fbcyborg

Non è un problema di spendere due minuti a compilare o a provare.

Il punto è che non voglio cambiare nomi ai file. Ho dei file con lettere accentate.

Per quanto riguarda invece le etichette, ad esempio, se monto un disco (senza etichetta) me lo monta come:

/media/7E370FA5115385B7

Senza contare il fatto che ogni volta (o spesso) mi compare una finestra di popup che dice: Unable to mount 500 GB Filesystem - A job is pending on /dev/sataext (che è il nome che ho assegnato a quell'hard disk, con le mie regole in udev).

----------

## djinnZ

Poi rispondo male e mi si accusa di essere scorbutico.

Installati lo stramaledetto convmv e lancialo.

Ti dirà se ci sono incongruenze o meno.

Se ne trovi puoi pensare di lanciarlo con --notest e solo a quel punto le modifiche che ti propone diventeranno effettive. NB: a meno che non hai una situazione più che stravagante i nuovi nomi di file che ti propone dovrebbero essere identici ai vecchi.

convmv non fa altro che traslare i caratteri in una determinata tabella codici, non cambia i nomi ai file. Almeno un eix od andare a leggere la documentazione è chieder troppo se proprio non vuoi ascoltarmi?!

Per il resto  *quel tale wrote:*   

> chi è causa del suo mal pianga se stesso

  mi pare abbastanza normale e prevedibile il comportamento.

----------

## fbcyborg

```
$ convmv -r Immagini/

Use of uninitialized value $name in exists at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode.pm line 105.

Use of uninitialized value $name in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode.pm line 106.

Use of uninitialized value $find in exists at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 25.

Use of uninitialized value $find in hash element at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 26.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 40.

Use of uninitialized value $find in pattern match (m//) at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 31.

Use of uninitialized value $find in string eq at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 44.

Use of uninitialized value $find in hash element at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 57.

Use of uninitialized value $find in lc at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 58.

Use of uninitialized value $find in hash element at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode/Alias.pm line 77.

Use of uninitialized value $name in string ne at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode.pm line 111.

Use of uninitialized value $name in hash element at /usr/lib64/perl5/5.12.4/x86_64-linux/Encode.pm line 115.

wrong/unknown "from" encoding!
```

----------

## djinnZ

 *fbcyborg wrote:*   

> convmv -r Immagini/

  :Shocked:   :Question: 

Per altri che fossero costruttivamente interessati alla questione sottolineo che  *fottuto man convmv wrote:*   

> ...
> 
> NTFS and VFAT (for long filenames) use UTF-16 internally to store filenames.  You should not need to convert filenames if you mount one of those filesystems.  Use appropriate mount options instead
> 
> ...
> ...

  e che NFS rompe, come sempre, ma non mi ha dato particolari problemi (ovviamente tutte le mia macchine linux sono utf8).

Direi che un qualcosa del genere

```
for enc in cp437 cp850 iso-8859-1 iso-8859-15; do convmv -f $enc -t utf-8 -r ./* ; done
```

 potrebbe andar bene per capire se ci sono stati problemi.

[flame]

 *strafottuto http://www.gentoo.org/doc/it/utf-8.xml wrote:*   

> 
> 
> ```
> # emerge --ask app-text/convmv
> 
> ...

 

Te lo ho detto due volte di leggere il fottutissimo manuale.  :Evil or Very Mad:  

[/flame]

Spero che questa volta i signori moderatori vogliano degnarsi di intervenire.

Se dicevo di consultare il manuale era semplicemente perché non mi ricordavo i parametri esatti e non avevo modo di verificarli. Ma manco a darsi cura di leggere, dopo che è stato ripetuto due volte...

Per quanto mi riguarda, ovviamente, la discussione è chiusa; in tutti i sensi.

----------

## fbcyborg

 *djinnZ wrote:*   

> Direi che un qualcosa del genere
> 
> ```
> for enc in cp437 cp850 iso-8859-1 iso-8859-15; do convmv -f $enc -t utf-8 -r ./* ; done
> ```
> ...

 

Grazie!

Dunque, eseguendo quel comando sulla directory di interesse, sembra che il test vada bene.

O meglio, per ognuna delle codifiche che sono state passate nella riga di comando e quindi 4 volte, ottengo un risultato del genere per alcuni file e directory:

```
Skipping, already UTF-8: ./CartaIdentit�

Skipping, already UTF-8: ./libertà2.jpg

Skipping, already UTF-8: ./libert��.jpg
```

Poi ovviamente c'è la scritta:

```
No changes to your files done. Use --notest to finally rename the files.
```

Non capisco questo fatto che vuole saltare il file, che è già UTF-8, però mostra il punto interrogativo ed allo stesso tempo dice che per rinominarli dovrei appunto usare --notest.

I file, necessitano una ridenominazione oppure no?

Come puoi ben vedere, alcune volte la lettera accentata passa, altre no.

----------

## Kernel78

Ragazzi la cosa che mi piace di meno è dover intervenire quando si creano queste situazioni perchè significa che gli utenti non sono stati in grado di moderarsi da soli.

è pur vero che fbcyborg sembra non aver colto subito il suggerimento di installazione di un programma e di lettura di un manuale ma questo non autorizza djinnZ a rispondere male ed essere scorbutico.

Per rispondere in un forum non serve avere solo le competenze ma anche la pazienza ...

Nessuno è obbligato a rispondere ... se un suggerimento non viene colto possiamo provare a riproporlo più chiaramente, non in maniera più sgarbata (oppure ci asteniamo dal continuare).

Per chiedere aiuto bisogna sforzarsi di comprendere le risposte che ci vengono date, se non conosciamo un programma consultiamo Google invece di chiedere cosa faccia (magari chi risponde l'ha già scritto più volte e non prende bene dover continuare a ripetere le stesse cose).

Se anche una ricerca non ci ha chiarito le idee è più che legittimo chiedere lumi (non è detto che chi da un suggerimento lo dia giusto o abbia compreso appieno il problema).

Sperando di non dover intervenire ancora saluto tutti.

Buon proseguimento di civile conversazione.

----------

## fbcyborg

Ebbene ritorno a postare in questo thread per un aggiornamento importante.

Grazie al preziosissimo aiuto di drizztbsd, che ha avuto la pazienza (al contrario di qualcun altro) ma soprattutto la capacità di spiegarmi bene cosa fare e come fare per risolvere il problema con l'encoding, sono riuscito finalmente a porre rimedio a quanto riportato all'inizio.

Il problema non è stato di immediata soluzione, infatti il semplice utilizzo di convmv non era sufficiente. È stato necessario utilizzare uno script bash, scritto dallo stesso drizztbsd, per rimettere a posto tutti i file con la codifica sballata.

Here's the drizztbsd's script:

```
#!/bin/bash

while IFS= read -r -d $'\0' path; do

        [[ "$(file -b - <<<"$path")" == "ISO-8859 text" ]] || continue

        newfilename=$(iconv -f ISO-8859-15 -t UTF-8 <<<"${path##*/}")

        newpath="${path%/*}/${newfilename}"

        if [ "$path" != "$newpath" ]; then

                mv -v "$path" "$newpath"

        fi

done < <(find "${1:-.}" -depth -mindepth 1 -print0)
```

Lo ringrazio di cuore per il suo intervento e soprattutto per il comportamento esemplare nei miei riguardi, che tutti noi in genere abbiamo verso il prossimo in questa favolosa comunità.

Ora posso dire di usare finalmente UTF-8 come codifica senza problemi.

----------

