SLAX, Deep Style, ZenWalk
Модератор: Модераторы разделов
SpeedHack
Сообщения: 116
Сообщение
SpeedHack » 27.10.2007 15:45
Код: Выделить всё
root[profile.d]# cat amp.sh
#!/bin/sh
export PATH="$PATH:/usr/httpd/bin:/usr/mysql/bin:/usr/php/bin"
root[profile.d]# export | grep PATH
declare -x MANPATH="/usr/local/man:/usr/man"
declare -x PATH="/usr/local/sbin:/usr/local/bin:/sbin:/usr/sbin:/bin:/usr/bin"
declare -x PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/lib/pkgconfig"
declare -x WINDOWPATH="7"
root[profile.d]# ./amp.sh
root[profile.d]# export | grep PATH
declare -x MANPATH="/usr/local/man:/usr/man"
declare -x PATH="/usr/local/sbin:/usr/local/bin:/sbin:/usr/sbin:/bin:/usr/bin"
declare -x PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/lib/pkgconfig"
declare -x WINDOWPATH="7"
root[profile.d]#
Хелп
Скрипт вроде написан правильно, но при запуске переменная PATH не изменяется :\
А так почему-то работает:
Код: Выделить всё
cyclon[~]$ export PATH="$PATH:/usr/httpd/bin:/usr/mysql/bin:/usr/php/bin"
cyclon[~]$ export | grep PATH
declare -x MANPATH="/usr/local/man:/usr/man"
declare -x PATH="/usr/local/bin:/usr/bin:/bin:/usr/games/bin:.:/usr/httpd/bin:/usr/mysql/bin:/usr/php/bin"
declare -x PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:/usr/lib/pkgconfig"
declare -x WINDOWPATH="7"
cyclon[~]$
Но каждый раз прописывать PATH руками, это не выход из положения
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu
Сообщение
serzh-z » 27.10.2007 15:49
При запуске amp.sh запускается новая копия шелла, со своей средой, который этот скрипт и исполняет и изменяет среду посредством обработки export в скрипте... Потом эта копия завершается, очищает память и отдаёт управление родительскому шеллу. Никакого воздействия на среду родительского шелла, порождённый не производит.
SpeedHack писал(а): ↑ 27.10.2007 15:45
Но каждый раз прописывать PATH руками, это не выход из положения
См. ~/.profile, ~/.bashrc, ~/.bash_profile и прочии, в зависимочсти от шелла (zsh, ksh и т.д.).
SpeedHack
Сообщения: 116
Сообщение
SpeedHack » 27.10.2007 16:25
Эмм, вопрос по теме: есть другие способы расшариванию приложений, кроме как создание символических ссылок в /usr/bin и редактирование PATH?
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu
Сообщение
serzh-z » 27.10.2007 16:30
Написание скриптов-"запускальщиков" и помещение их, например, в /usr/local/bin. Использование alias.