[Linux] sto copiando un miliardo di files e ottengo molti errori "Carattere multibyte o esteso non valido o incompleto"
sto googlando per arrangiarmi, ma grazie in anticipo se qualcuno mi suggerisce la soluzione
- Opensource Obscure
Con cosa li stai copiando? In KDE, o comunque con qualcosa che usa Qt?
- tekNico
come li stai copiando?
- Angelo
in KDE usando cp da Konsole
- Opensource Obscure
btw la partizione di origine e' in Ext4, quella di destinazione in NTFS
- Opensource Obscure
Azz, rompe pure da terminale? Prova con mc (Midnight Commander).
- tekNico
ok ma magari provo prima da console a questo punto
- Opensource Obscure
preciso che i files hanno nomi con caratteri davvero diabolici che sono stati creati su svariati o.s. e poi masterizzati, rimasterizzati, ricopiati, etc
- Opensource Obscure
ora da console non sta più dando errori! btw ho dato cp -pr, prima avevo dato cp -r
- Opensource Obscure
Prima hai detto che usavi Konsole, poi che provavi da console, intendevi usando un altro programma terminale?
- tekNico
console = tty ho il sospetto.
- Angelo
Ah ok, Ctrl-Alt-F1 e compagni.
- tekNico
in konsole o in console non dovrebbe fare nessuna differenza. è quasi certamente qualche problema di encoding del filename, però se la destinazione è ntfs non dovrebbe essere un problema: ntfs di per sé accetta utf-16 anche non corretto, supponendo che ntfs-3g non aggiunga restrizioni spurie. Forse qualche opzione di mount per la partizione ntfs potrebbe risolvere. ma transcodificare i nomi dei file in modo che siano tutti puliti? sono troppo?
- Oblomov
sì quando ho scritto console intendevo tty, "virtual console", non so mai come chiamarla.
- Opensource Obscure
comunque gli stessi errori sono comparsi anche lì
- Opensource Obscure
Charlie Brown: usavo cp perché sarebbe una copia una-tantum in locale. Ora indago quel bug che suggerisci ma credo di non avere ntfs-3g (?) EDIT certo che uso ntfs-3g, sono su Ubuntu https://help.ubuntu.com/communi...
- Opensource Obscure
Oblomov: transcodificare i nomi dei files di origine sembra la soluzione ottimale, dovrò studiare qualcosa
- Opensource Obscure
*THUD*
- Opensource Obscure
I file system su Unix sono sequenze di byte agnostiche, può esserci di tutto. Non so se NTFS possa accettare nomi non codificati. Se puoi modificare la sorgente, prova a usare convmv .
- tekNico
non puoi cambiare nome ai files prima di copiarli? ho avuto problemi analoghi tempo fa
- zidagar ▶ ▷
zidagar: sì, quello che avevo iniziato a fare (prima di accorgermi che erano centinaia) era rinominare a mano i files dai nomi sballati nella partizione origine. Quello che continuo a chiedermi (nel frattempo non ho trovato la soluzione) è se c'è un modo per evitare la rinomina manuale (tra l'altro mi starebbe benissimo sostituire indistintamente tutti i caratteri problematici con lo stesso carattere, che so, un underscore)
- Opensource Obscure
be' puoi fare un rename di massa usando il larry wall filename fixer (http://snipplr.com/view...) e sostituendo tutti i caratteri sopra 128 e sotto 32, oppure puoi fare una roba più sofisticata con iconv e uno scriptino...
- Angelo
magari un colpo di find con -exec e qualche regolina per portare i nomi dei file a qualcosa di accetabile riesce ad aiutarti a sistemare la sorgente in modo rapido prima di copiare
- zidagar ▶ ▷