convmv kérdés

Fórumok

Sziasztok!

Szertnék tömegesen átkonvertálni fájlneveket UTF8-ról ISO8859-2-re. convmv jól dolgozik, de van egy kis gondom vele. Sajnos nagyon sok mappáról van szó és vegyesen vannak bennük UTF8-as és ISO8859-2-es fájlnevek.
Következő módon próbálkozok:

convmv --notest -f utf8 -t latin2 -r /elérési/út

A gondom az, hogy ha latin2-es kódolású fájlt talál akkor hibát dob, hogy nem tudja konvertálni, és leáll a konvertálás. Szeretném ha ezeket a fájlokat egyszerűen átugraná, hogy ne kelljen egyesével végigmatatnom a már latin2-es kódolású fájlokat.

A másik probléma, hogy bizonyos esetekben olyan hibát dob, hogy nem tudja az összes karaktert átkódolni latin2-esre. Ilyenkor is leáll.

Azt szeretném elérni, hogy ilyen esetekben (amikor hiba van) ne álljon le a konvertálás, hanem fusson le csak hagyja ki ezeket a fájlokat. Sajnos nem sikerült ilyen opciót találnom.

Hozzászólások

Eyg tipp: próbáld meg először fordítva, latin2-ről utf8-ra konvertálni. Ilyenkor a convmv észreveszi és átugorja azokat a fájlokat, amik már utf8 kódolásúak. Ezután már minden fájlneved utf8 lesz, amit vissza tudsz kódolni latin2-be.

Ha olyan karakterek is vannak a fájlnévben, amik nincsenek a latin2-ben, akkor persze. Ha a find paranccsal minden fájlra külön meghívod a convmv-t, akkor kihagyhatod az ilyen fájlokat:
find /elérési/út -type f -exec convmv --notest -f utf8 -t latin2 {} \;
De ennek meg nem sok értelmét látom, mert akkor megint vegyesen lesznek latin2 és utf8 fájlneveid.

Még egy tipp: Ha a file parancs felismeri, hogy milyen kódolású a fájl (vagy legalábbis utal rá, hogy utf vagy vmilyen iso8859), akkor eez alapján tudod csak a neked kellőket konvertáltatni....

Sziasztok!

Nem akartam uj topikot nyitni. Convmv-t meglehet valahogy fuzni, hogy a konyvtarak nevet is atkonvertalja, ne csak a file-oket?
Vagy van valami mas tool erre?

-------------------------------
“The 0 in Raid 0 stands for how many files you’re going to get back if something goes wrong” :)

Kozben sikerult find-dal megcsinalni, bar bevallom picit ideges voltam, hogy hat ez a program elmeletileg konyvtarakkal is foglalkozik aztan csak akkor hogyha azt kapja paramternek normalisan. Koszi a tippet.

-------------------------------
“The 0 in Raid 0 stands for how many files you’re going to get back if something goes wrong” :)

Tud recursive keresest, akkor nehogymar meg kulon megkerestessem find-al elotte, mikor ez is azt csinalja.
Ahogy nezem perl script, arra mar rajottem mikor scan-eli a helyet akkor felismeri ha konyvtar van ott, csak utanna nem foglalkozik vele...

--
Don't Panic if you see me laughing,
that's not a bug, just a feature.