Linux за българи: Форуми

Linux секция за начинаещи => Настройка на програми => Темата е започната от: HarleyBG в May 28, 2005, 12:33



Титла: Local
Публикувано от: HarleyBG в May 28, 2005, 12:33
Създвам във ./kde/Autostart/     local.sh с опиця executable и със съдържание:
Примерен код
export LC_TIME=bg_BG.utf8


Но календарът не се променя след неговото стартиране. Къде греша?


Титла: Local
Публикувано от: laskov в May 28, 2005, 12:51
А има ли на първия ред
Цитат
#!/bin/sh
например ?


Титла: Local
Публикувано от: CaBA в May 28, 2005, 13:51
LC_TIME трябва да се експортира от login процеса ти, за да е в сила за всички програми, които стартираш. Това означава да поставиш
Примерен код
export LC_TIME=bg_BG.utf8
в .bashrc, ако ползваш bash и системата ти е в runlevel 3 (влизаш в конзола, а не направо в X). Ако влизаш направо в X, тогава трябва да видиш в документацията на login мениджъра си как се експортират променливи (не съм много сигурен за последното, май някои са доста хитри и четат ресурсните файлове на обвивките).
Защо е така? Процесите наследяват променливите на средата на своите родители, но не могат да променят средата на родителите си. Когато изпълняваш файла ~/.kde/Autostart/local.sh, LC_TIME се променя само за този процес. Можеш много лесно да го провериш в конзола с командите:
Примерен код
$echo $LC_TIME
$~/.kde/Autostart/local.sh
$echo $LC_TIME
Това е основно ограничение на Unix - направено е заради сигурността.