Добавление пользовательского пути путем обновления ~ / .profile с неработающим

14

Я изменил свой файл ~ / .profile, добавив следующее:

PATH="/user/share/android-sdk-linux/tools:$PATH"

Затем я выхожу и снова вхожу, но путь не добавляется в переменную среды $ PATH. Я проверяю в терминале:

echo $PATH
/usr/share/android-sdk-linux/tools:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/jdk1.7.0_17/bin

пожалуйста, порекомендуйте

редактировать

Я даже попробовал:

PATH=$PATH:/usr/share/android-sdk-linux/tools
EXPORT PATH

Здесь тоже не повезло.

Редактировать 2

~ / .Profile:

 # ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
    . "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

# set path to android
# PATH = $PATH:/usr/share/android-sdk-linux/tools
# EXPORT PATH

PATH="/usr/share/android-sdk-linux/tools:$PATH"

Добавление в ~ / .bachrc или / etc / environment:

PATH="/usr/share/android-sdk-linux/tools:$PATH"

работает, но почему бы не ~ / .profile?

Рой Хинкли
источник
Как примечание, в 13.04 и позже вы можете установить android-tools-adbи android-tools-fastbootнапрямую из Центра программного обеспечения, чтобы получить ADB и fastboot. Это не совсем отвечает на ваш вопрос, но так как я узнал, что вы делаете, я решил оставить комментарий.
Ян Сантопьетро
Если вы хотите PATH для всех пользователей: прочитайте мой ответ.
PeppeDAlterio
@PeppeDAlterio Я хочу добавить собственный путь, а не запрет.
Рой Хинкли,
Вы имеете в виду разные пути для каждого пользователя?
PeppeDAlterio
Сейчас я просто хочу, чтобы это сработало для меня.
Рой Хинкли

Ответы:

2

Если я правильно понял, вы хотите навсегда изменить значение envar PATH.
В Ubuntu envar PATH определяется внутри /etc/environmentфайла. Поэтому вам нужно изменить объявление envar PATH внутри этого файла, а не внутри .profile!
Используйте это только если вы хотите изменить значение PATH для каждого пользователя!

PeppeDAlterio
источник
Это совершенно не указано. Что если в системе более одного пользователя?
Раду Рэдяну
Да, вы правы ... Я добавляю "предупреждение" к моему ответу. Спасибо
PeppeDAlterio
Я делаю. Это намеренно.
Рой Хинкли
15

Не используйте пробел до или после, =когда вы присваиваете значение переменной в bash. Правильный путь:

PATH="/user/share/android-sdk-linux/tools:$PATH"

Чтобы изменения вступили в силу, перезагрузите компьютер или создайте исходный .profileфайл, используя следующую команду:

source ~/.profile

Если вы хотите изменить путь для всех пользователей, добавьте эту строку в /etc/profileфайл. Снова требуется перезагрузка.

Раду Рэдяну
источник
1
Удалены пробелы и дословно процитированы пути, как у вас здесь и до сих пор не так в эхо.
Рой Хинкли
Вы можете вставить вывод cat ~/.profileи echo $PATH?
Ян Сантопьетро
@AndroidAddict Вам нужно перезапустить или установить исходный код ~/.profileв терминале до перезагрузки:source ~/.profile
Раду Рэдяну