Как мне отредактировать $ PATH (.bash_profile) в OSX?


174

Я пытаюсь отредактировать запись в PATH, так как я сделал что-то не так.

Я использую Mac OS X 10.10.3

Я пытался:

> touch ~/.bash_profile; open ~/.bash_profile

Но редактор файлов открывается ни с чем внутри.

Моя проблема:

Я пытаюсь установить ANDROID_HOME в мой путь

Я сделал это с ошибкой, но когда я закрыл терминал и вернулся, его уже не было, поэтому я попробовал еще раз:

export ANDROID_HOME=/<installation location>/android-sdk-macosx
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

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

Как мне выполнить желаемые настройки?

Если бы я должен был редактировать bash.profile, как бы я ввел приведенный выше код?

Спасибо!


3
Используйте vi ~/.bash_profileили subl ~/.bash_profileили mate ~/.bash_profile, в зависимости от вашего любимого редактора.
Дроппи

только что попробовал nano ~ / .bash_profile, он загружается, но внутри ничего нет
Joolah

1
Звучит как .bash_profileпусто / отсутствует тогда.
Дроппи

4
Для новичков, как, эти заметки помогут: 1. ~/.bash_profileозначает, что он находится в корневом каталоге. ~означает корневой каталог. 2. файлы с префиксом .невидимы для lsкоманды. Они вроде как скрытые файлы, файлы нормальный пользователь не действительно нужно видеть. Наш случай здесь является исключением. Чтобы увидеть его, вы можете сделать ls -a3. touchсоздаст файл в указанном каталоге, если он не существует. Если это действительно существует, то ничего не случится
Милая

1
4. и, очевидно open, откроет его вашим текстовым редактором по умолчанию. 5. В результате работа touch ~/.bash_profileс любым каталогом будет работать. потому что твой путь не относительный
Милая

Ответы:


360

Вы должны открыть этот файл в текстовом редакторе, а затем сохранить его.

touch ~/.bash_profile; open ~/.bash_profile

Он откроет файл с помощью TextEdit, вставит ваши вещи и затем сохранит его. Если вы откроете его снова, вы найдете свои правки.

Вы можете использовать другие редакторы:

nano ~/.bash_profile
mate ~/.bash_profile
vim ~/.bash_profile

Но если вы не знаете, как их использовать, openподход легче использовать .


В качестве альтернативы вы можете положиться pbpaste. копия

export ANDROID_HOME=/<installation location>/android-sdk-macosx
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

в системном буфере обмена, а затем в оболочке запустить

pbpaste > ~/.bash_profile

Или в качестве альтернативы вы также можете использовать cat

cat > ~/.bash_profile

(теперь catожидает ввода: вставьте два определения экспорта и нажмите Ctrl-D).


Существуют проблемы с использованием таких вещей, как catзапись в файлы, когда текст содержит ссылки на переменные среды, поскольку это означает, что эти ссылки необходимо экранировать. Это должно более обычно использовать текстовый редактор.
Дроппи

Что бы это значило, если я введу «touch ./bash_profile» (он ничего не говорит), а затем «open .bash_profile», и он сообщит мне, что файл не существует?
Дронз

82

Немного подробнее для начинающих:

Во-первых, убедитесь, что файл .bash_profile существует? Помните, что файл .bash_profile не существует по умолчанию. Вы должны создать это самостоятельно.

Зайдите в вашу пользовательскую папку в Finder . Файл .bash_profile должен быть там найден. -> HD / Пользователи / [ИМЯ ПОЛЬЗОВАТЕЛЯ]

Помните: файлы с точкой в ​​начале '.' скрыты по умолчанию.

Чтобы показать скрытые файлы в Mac OS Finder:

Press: Command + Shift + .

Если он не существует, вы должны создать .bash_profile самостоятельно.

Откройте приложение терминала и перейдите в папку пользователя с помощью простой команды:

cd

Если он не существует, используйте эту команду для создания файла :

touch .bash_profile

Во-вторых, если вы не можете запомнить команды для сохранения и закрытия в vim, nano и т. Д. (Способ, рекомендованный выше), самый простой способ отредактировать - открыть файл .bash_profile в вашем любимом редакторе кода (Sublime и т. Д.).

Finder -> Папка пользователя. Щелкните правой кнопкой мыши -> открыть с помощью: Sublime Text (или другой редактор кода). Или перетащите его на приложение в доке.

… И там вы можете редактировать его, передавать команды экспорта в новых строках.


1
Я лично обнаружил, что доступ к «скрытым» файлам обычно является плюсом в emacs ...
Мэллори-Эрик

2
Я обновил способ отображения скрытых файлов в Finder в Mac OS. Нажмите: Ctrl + Shift +.
Herr_Hansen

По какой-то причине touch не создал файл, но я использовал cat, как и в ответе Алессандро.
Дронз

44

Если вы используете MAC Catalina, вам нужно обновить файл .zshrc вместо .bash_profile или .profile


2
Вау, я сходил с ума, пытаясь понять, почему я не могу обновить упаковщик и почему моя система ищет неправильный путь для ruby. Должен ли я скопировать вставить мой bash_profile в Zshrc?
Рикс

Я использую каталину, но я не могу найти этот файл, вы можете объяснить, что это за каталог?
MrDev

WTF, это безумие!
Лоретопариси

Вы должны убедиться, что ваш терминал теперь Zsh с chsh -s /bin/zsh. Это активирует ваш терминал, чтобы автоматически быть Zsh. Затем вы можете внести изменения в ~ / .zshrc или ~ / .zprofile.
the775

СПАСИБО. Если вы не хотите вводить все заново, вы можете просто сделать:mv .bash_profile .zshrc
Hatzil

9

Для начинающих: чтобы создать .bash_profileфайл в своем домашнем каталоге на MacOS, запустите:

nano ~/.bash_profile

Затем вы можете вставить следующее:

https://gist.github.com/mocon/0baf15e62163a07cb957888559d1b054

Как видите, он содержит несколько примеров псевдонимов и переменную среды внизу.

Как только вы закончите вносить изменения, следуйте инструкциям в нижней части окна редактора Nano для WriteOut ( Ctrl-O) и Exit ( Ctrl-X). Затем выйдите из своего терминала и снова откройте его, и вы сможете использовать вновь определенные псевдонимы и переменные среды.


5

В Macbook, шаг за шагом:

  1. Прежде всего откройте терминал и напишите: cd ~/
  2. Создайте свой bash-файл: touch .bash_profile

Вы создали свой файл ".bash_profile", но если вы хотите отредактировать его, вы должны написать его;

  1. Отредактируйте свой профиль bash: open -e .bash_profile

После того, как вы можете сохранить из левого верхнего угла экрана: Файл> Сохранить

@canerkaseler


1

Mac OS X хранит путь не в .bash_profile, а в .profile, поскольку Mac OS X является ветвью семейства * BSD. Вы должны увидеть экспортный бла-бла-бла в .profile, как только вы запустите cat .profile на своем терминале.


2
Что касается Йосемити (10.10), то это уже не так, если когда-либо было. Bash уже давно является оболочкой по умолчанию для macOS. Исторически сложилось, что * BSD имел cshнесовместимое, а использует .cshrcи нет .profile(хотя, если вам нужно использовать несколько Bourne-совместимых оболочек, имеет смысл иметь общие настройки в .profile).
tripleee

1

Для меня моя Mac OS - это Мохаве. и я сталкиваюсь с той же проблемой в течение трех дней, и в конце я просто пишу правильный путь в файле .bash_profile, который выглядит следующим образом:

    export PATH=/Users/[YOURNAME]/development/flutter/bin:$PATH
  • примечание 1: если у вас нет .bash_profile создайте его и напишите строку выше
  • примечание 2: заархивируйте ваш скачанный пакет SDK в [home] / development, если вы скопировали и вставили этот путь

Это. Также обязательно закройте терминал и откройте новый, чтобы увидеть работу команд флаттера
Паоло

0

Установите путь JAVA_HOME и ANDROID_HOME> Вы должны открыть терминал и ввести ниже cmd.

touch ~/.bash_profile; open ~/.bash_profile

После этого вставьте указанные ниже пути в файл базового профиля и сохраните его.

export ANDROID_HOME=/Users/<username>/Library/Android/sdk 
export PATH="$JAVA_HOME/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator:$PATH"
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home

0

Определите, какую оболочку вы используете, набрав echo $SHELLв Терминале.

Затем откройте / создайте правильный файл RC. Для Баш это $HOME/.bash_profileили $HOME/.bashrc. Для Z shell это $HOME/.zshrc.

Добавьте эту строку в конец файла:

export PATH="$PATH:/your/new/path"

Чтобы проверить, обновите переменные, перезапустив Терминал или набрав, source $HOME/.<rc file>а затем выполнитеecho $PATH

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.