lokalizace msdos disku

Cejka Rudolf cejkar at dcse.fee.vutbr.cz
Tue Jan 23 18:35:36 CET 2001


Doufam, ze WinNT se v tomto smeru chovaji stejne jako Win95/Win98,
protoze u WinNT jsem jeste nemel moznost pristup k cestine otestovat.

Vladimir Mencl, MK, susSED wrote (2001/01/23):
> Zkousel jsem tomu pomoci nastavenim jak locale, tak i prekodovaci
> tabulky - ale neuspesne.
> 
> mount_msdos -o rw -W iso22dos -L cs_CZ.ISO_8859-2 /dev/ad0s1 /newdos1

Ani na takto pripojenem disku nejsou spravne videt ceske nazvy?
Mely by. Nejak si nedokazu predstavit vyznam "ale neuspesne".

> No, ale je mi jasne, ze to je blbe - disk neni v iso8859-2, ale v
> CP1250. (nebo vlastne unicodu, ne?)

Naopak - je to spravne. Omezme se ted jen na nazvy souboru.
Tyto nazvy jsou na disku ulozene dokonce ve dvou tvarech:
Kratke nazvy jsou v CP852 a dlouhe nazvy jsou v Unicode.
Kodovani CP1250 se v nazvech souboru nepouziva.

Parametr -W iso22dos zpusobi nahrani 3 tabulek:
1) ISO_8859-2 -> Unicode (tato tabulka z duvodu setreni mistem
   slouzi i pro prevody Unicode -> ISO_8859-2): Konverze dlouhych
   nazvu na lokalni a lokalnich nazvu na dlouhe.
2) CP852 -> ISO_8859-2: Konverze kratkych nazvu na lokalni.
3) ISO_8859-2 -> CP852: Konverze lokalnich nazvu na kratke.

Parametr -L cs_CZ.ISO_8859-2 zpusobi definovani 2 tabulek:
1) Prevod lokalnich malych znaku na velke.
2) Prevod lokalnich malych znaku na male.

Prevody -L jsou nutne hlavne kdyz se zjistuje, zda jsou dva nazvy
z pohledu WinXX shodne ci nikoli. A tento test je potreba dost
casto, protoze pro vyhledavani a unikatnost souboru neni velikost
pismene rozhodujici.

> Existuje nekde definice locale pro cp1250 ?

O zadne nevim a zadna by nemela byt potrebna.

> A da se nejak vsunout pro mount tak, aby se prekodovavali jen jmena
> souboru - ale NE obsah?

A ted se muzeme vratit k obsahu celeho disku: Prevadeji se pouze
nazvy souboru. Obsah souboru se nikdy nemeni. Navic by bylo
velmi obtizne urcovat, ktere soubory lze prekodovavat a ktere nelze.

> A jdu na to vubec spravne?

To se vi ;-)

> Vlastne ani vubec netouzim po tom mit soubory prejmenovane tak, aby
> nazev daval smysl - staci mi, kdyz pujdou otevrit. Nepouzivam ale "-s",
> bojim se, ze mi to pak bude nicit dlouha jmena pri pridavani novych
> souboru. Nevite nekdo, jak se to chova?

"-s" rozhodne nepouzivat. Sice jsem to nezkousel, ale nasledky bych
odhadoval priblizne stejne, jako kdyz nekdo pouziva stareho Norton
Commandera (umi jen kratke nazvy) na disku s dlouhymi nazvy: Dlouhe
nazvy se nebudou tvorit a smazane soubory s dvojim nazvem budou pro
WinXX zustavat jako nekonzistentni polozka v adresari. Pri spusteni
scandisku bych odhadoval, ze takto smazany soubor uvidi jako ztracene
datove bloky a bude opravovat adresarovou strukturu.

> ... kdybych vedel, ze to "neskodi", tak to asi pouziju - vadi mi i
> mezery v nazvech adresaru, nefunguji s tim pak konstrukce jako
> 
> find / | xargs grep

Ha!

find / -print0 | xargs -0 grep

Huh?

> nebo
> 
> du -k | xdu

Tak tohle je uz horsi, protoze xdu neznam a du na nic takoveho
asi nepamatuje, ale mozna by slo pouzit neco jako:

du -k | <zrusit velikosti> | sed -e 's/\([ `"$\]\)/\\\1/g;s/^/"/;s/$/"/' | xdu

Fungovat to urcite nebude, ale princip by mozna mohl byt pouzitelny.

Dobry?

--

Kdyz uz jsme u toho, je vubec -W iso22dos -L cs_CZ.ISO_8859-2
pouzitelne i u slovenskych disku?

-- 
Rudolf Cejka   (cejkar at dcse.fee.vutbr.cz;  http://www.fee.vutbr.cz/~cejkar)
Brno University of Technology, Faculty of El. Engineering and Comp. Science
Bozetechova 2, 612 66  Brno, Czech Republic



More information about the Users-l mailing list