[linux] Problem s triedenim - vyriesene skoro

Zdenko Podobny zdpo na mailbox.sk
Úterý Březen 13 21:57:24 CET 2001


>Napísané dòa 11.03.2001 11:15:19 +0100, (autor: Zdenko Podobny):
>> Toto nie je pravda (celkom). Sort by mal podla dokumentacie pouzivat
>> nastavenia z 
>> LOCALE len v pripade pouzitia prepinacov, takze napr. pri pouzi "soft -f
>> text" by sa malo 
>> triedit podla anglickych pravidiel. Problem vyssie spomenuteho triedenia
>
>Ehm. Vyssie uvedene tvrdenia si logicky odporuju (ak "soft -f text",
>znamena "sort -f text")...

No, sort podla niecoho musi triedit. Ale aj tak nejaky hlboky rozpor v tom nevidim. A este 
jedna vec: nemalo  tam byt 'soft -f text', ale 
'sort text' to uznavam (prepinac -f by mal pouzivat nastavenie LC_CTYPE). 

>.. a BTW, asi som zle hladal, ale v mojej dokumentacii sa pise len o tom,
>ze sort pouziva LC_COLLATE. Nepise sa nic o tom, ze by BEZ pouzitia
>prepinacov LC_COLLATE nebral v uvahu a triedil podla C (ani naopak).

Nuz suhlasim, ze som sa nevyjadril presne. Ale, ked 'sort' nepouzije nastavenia LC* (na ich 
pouzitie vyzaduje prepinace ako -l, -i, -f -M atd.), podla coho zotriedi vysledok pri 'sort text' 
??? Snad ste tym nechceli  povedat, ze 'sort text' nic neurobi?
Presne to nie je nikde napisane, ale podla mna pouzije na triedenie ascii tabulku (aspon 
podla mojich testov, co som pred chvilou narychlo spravil) a teda pouzije anglictinu (alebo 
presnejsie americtinu? :-) ) aj ked uznavam, ze by sme sa o tom mohli dohadovat, co za 
jazyk je tu pouzity. Aj tak si myslim, ze som sa v podstate nemylil.

>> je, ze automaticky 
>> ignoruje tabulator, mezderu (konca aj dvojbodku - vyskusal som to). Znova
>> podla 
>
>Ano. Podla slovenskeho triedenia sa (zjednodusene povedane) medzery a dvojbodky 
ignoruju.

Toto nie je pravda!!!  Sort _defaultne_ (vhodnejsi vyraz ma narychlo nenapada) chape iba 
whitespace ako oddelovac poli v texte. Takze toto nic nema spolocne so slovencinou. To je 
vec sortu. Pozrite si dokumentaciu.

>> Podla dokumentacie by sa takto mal sort spravat az po zadani prepinaca. 
> Poprosim presnejsi odkaz na tu dokumentaciu. Vdaka.


`-t SEPARATOR'
     Use character SEPARATOR as the field separator when finding the
     sort keys in each line.  By default, fields are separated by the
     empty string between a non-whitespace character and a whitespace
     character.  That is, given the input line ` foo bar', `sort'
     breaks it into fields ` foo' and ` bar'.  The field separator is
     not considered to be part of either the field preceding or the
     field following.

Takze pokial som spravne pochopil dokumnetaciu, sort by mal zacat chapat ':' ako 
oddelovac poli az po zadani prepinaca '-t :'. Totizto pokial viem ':;|' a dalsie znaky 
pouzivane na oddelovanie poli nie su >whitespace<. Aspon nie podla The Free On-line 
Dictionary of Computing (19 Jan 01) [foldoc]:

  whitespace
     <character> (From the colour it produces on white paper) Any
     contiguous sequence of {spaces}, {tabs}, {carriage return}s,
     and/or {line feed}s.  Whitespace might also possibly include
     {form feed} characters.  The term is common on {Unix}.

Podla mna sa tento tato diskusia posunula niekam inam, ako som chcel. Pre mna ako 
obycajneho uzivatela je podstatnejsie, ze som musel stravit kopu casu hladanim, kde robim 
chybu, relativne zbytocnom studovanim dokumentacie a naslednim testovanim jednotlivych 
parametrov a ich kombinacii. Nakoniec som zistil, ze chybu nerobim ja (aspon podla 
vysledku a vsetkeho, co sa mi podarilo zistit).
Vysledok (prechod na nizsiu verziu programu) je pre mna trochu zarazajuce (a nie celkom 
logicke) riesenie.

Zdeno







Další informace o konferenci linux