Portál AbcLinuxu, 24. dubna 2024 00:35


Dotaz: nastavení LC_CTYPE

19.2.2016 15:18 RM
nastavení LC_CTYPE
Přečteno: 1176×
Odpovědět | Admin
Můžete mi někdo vysvětlit, proč na jednom linuxu (Arch) stačí nastavit LC_CTYPE, zatímco u druhého (slackware) musím použít v tom samém skriptu LC_ALL?? Díky.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

19.2.2016 15:53 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: nastavení LC_CTYPE
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zřejmě na tom druhém máš již LC_ALL nastaven - ten má totiž vždy přednost a pokud existuje, tak ser LC_CTYPE (a ostatní) ignorují.
19.2.2016 16:11 RM
Rozbalit Rozbalit vše Re: nastavení LC_CTYPE
jo, to bude asi ten důvod, díky. Co je ale potom vhodnější používat ve skriptech? Většinou jsem čet, že ostatní používají LC_CTYPE, to mi takhle přijde dost nespolehlivé.
19.2.2016 23:42 podlesh | skóre: 38 | Freiburg im Breisgau
Rozbalit Rozbalit vše Re: nastavení LC_CTYPE
Ano, pokud je nutné nastavit locale (např. pro parsování výstupu), tak je LC_ALL jistota.

A nebo, alternativa: unset LC_ALL
20.2.2016 09:39 RM
Rozbalit Rozbalit vše Re: nastavení LC_CTYPE
Nakonec jsem to vyřešil smazáním LC_ALL=; Použít unset bude ale přece jen jistější.
21.2.2016 14:13 RM
Rozbalit Rozbalit vše Re: nastavení LC_CTYPE
Jen ještě k té první variantě (nastavit LC_ALL). To není dobrej nápad. Protože pokud není ještě LC_ALL nastavené, což na většině strojích není, tak nejde použít nastavení lokálně (pro skript), a musí se použít extern LC_ALL. Což je zbytečné, neboť se pak musí ve skriptu vytvářet záloha původnho stavu a pak znovu s extern vše obnovit. Jednoznačně tedy lokálně unset LC_ALL a pak lokálně nastavit LC_CTPYE nebo LANG pro vše.
21.2.2016 15:23 RM
Rozbalit Rozbalit vše Re: nastavení LC_CTYPE
oprava: s/exter/export/g

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.