Portál AbcLinuxu, 8. května 2025 18:04

Dotaz: Jak změnit kodovani souboru z msdos?

20.3.2012 07:43 mhh
Jak změnit kodovani souboru z msdos?
Přečteno: 764×
Odpovědět | Admin
Příloha:
Ahoj, můžu se zeptat, v jakém kodování je přiložený soubor? file -i ukazuje UTF-8, je to právě export z msdosu a potřeboval bych tam nahodit kodování češtině podobné. Zkoušel jsem iconv, ale bez úspěchu, poradíte? Díky

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Konqui avatar 20.3.2012 07:53 Konqui | skóre: 18 | blog: Konqui | Rožnov pod Radhoštěm
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pro zjištění kódování je utilita enca:
IBM/MS code page 852; PC (DOS) Latin 2
  Surrounded by/intermixed with non-text data

Takže:
iconv -f IBM852 -t UTF8 test
Open/save dialogy z GTK+ jsou nejkřiklavější ukázkou toho nejdebilnějšího software, co vůbec může existovat.
20.3.2012 13:33 mhh
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
iconv -f IBM852 -t UTF8 *.TXT
Takhle mi to taky nefunguje
Konqui avatar 10.4.2012 11:20 Konqui | skóre: 18 | blog: Konqui | Rožnov pod Radhoštěm
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Iconv nebere (IMHO) jako parametr masku souorů, pro překódování všech souborů použijte find
find -name '*.TXT' -exec iconv -f IBM852 -t UTF8 {} \;
Open/save dialogy z GTK+ jsou nejkřiklavější ukázkou toho nejdebilnějšího software, co vůbec může existovat.
10.4.2012 12:01 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Maska souborů není záležitostí každého jednotlivého programu, ale shellu. Ten zástupné znaky sám vyhodnotí a příslušnému programu předá už rovnou seznam souborů. Takže pokud máte v aktuálním adresáři soubory
  • cervenec.txt
  • srpen.txt
  • zari.txt
a v shellu zadáte
iconv -f IBM852 -t UTF8 *.txt
spustí se ve skutečnosti
iconv -f IBM852 -t UTF8 cervenec.txt srpen.txt zari.txt
Případně mohou být soubory uvedeny v jiném pořadí, shell pořadí nezaručuje.

Nejde tedy o to, zda iconv podporuje masku souborů, ale zda přijme více parametrů s názvem souboru. iconv 2.11.2 na mém počítači by to měl podle manuálu i podle --help umět.
10.4.2012 17:35 myšák | skóre: 26 | blog: EmentuX | Ostrava
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Jen poznámka na okraj ... pokud už používáte enca, tak pro změnu kódování stačí použít enca -c nebo enconv a máte to z jedné vody na čisto.
Je nesmírně těžké být idiotem, konkurence je obrovská...
20.3.2012 07:54 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Odpovědět | | Sbalit | Link | Blokovat | Admin
CP852, je to „standardní“ kódování Microsoftu, které používá pro středoevropské jazyky v příkazové řádce – už v MS DOSu, ale v příkazové řádce se ve Windows používá do teď.
20.3.2012 07:54 Kit
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dle očekávání je v CP852.
recode cp852..u8 CERVENEC.TXT
20.3.2012 11:56 mhh
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Díky, jde napsat něco jako *.txt ? že by mi to překódovalo více souborů?
for old in *.txt;
do
iconv --from-code=cp582 --to-code=utf-8 $old > $old.utf8;
done
nezabírá
20.3.2012 12:05 Kit
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Jistě.
recode cp852..u8 *.TXT
20.3.2012 13:19 mhh
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
recode: CERVEN.TXT failed: Ambiguous output in step `CR-LF..data'
Dela to jak u jednoho, tak u vice souborů
20.3.2012 13:37 mhh
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
s parametrem -f to nepřevede správně
20.3.2012 13:39 Kit
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
Protože v originálu máš špatně CR-LF. Dá se to potlačit
recode -f cp852..u8 *.TXT
ale pak to převede vše bez varování i v případě, že to už jednou převedeno bylo. Můžeš si tím ty soubory poničit.
20.3.2012 14:05 mhh
Rozbalit Rozbalit vše Re: Jak změnit kodovani souboru z msdos?
jo, už mi to funguje, někde byla chyba, díky mockrát

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.