Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I edit $PATH (.bash_profile) on OS X?

People also ask

How do I edit my bash_profile on Mac?

Check if the bash_profile is visible there or not. If not, press Command + Shift + . and bash_profile will be visible. Select the bash_profile and press Command + Delete to delete the file.

Does Mac Have a bash_profile?

In simple words, bash_profile is a configuration file for the Bash shell, which is a hidden file in your Mac's user directory. The bash profile on Mac has loaded before Terminal loads your shell environment and contains all the startup configuration and preferences for your command-line interface.


You have to open that file with a text editor and then save it.

touch ~/.bash_profile; open ~/.bash_profile

It will open the file with TextEdit, paste your things and then save it. If you open it again you'll find your edits.

You can use other editors:

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

But if you don't know how to use them, it's easier to use the open approach.


Alternatively, you can rely on pbpaste. Copy

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

in the system clipboard and then in a shell run

pbpaste > ~/.bash_profile

Or alternatively you can also use cat

cat > ~/.bash_profile

(now cat waits for input: paste the two export definitions and then hit Ctrl + D).


A bit more detailed for beginners:


Before you begin with .bash_profile on Mac, please be aware that since macOS Catalina zsh (z shell) is the default shell. Therefore stuff we used to put in the .bash_profile now belongs to the .zshenv or the .zshrc file.

.zshenv .zshrc ? (Found here)

.zshenv: invocations of the shell. Often contains exported variables that should be available to other programs. For example, $PATH.

.zshrc: Sourced in interactive shells only. It should contain commands to set up aliases, functions, options, key bindings, etc.


STEP 1

Make sure the .bash_profile file is existing? (or the .zshenv of course) Remember that the .bash_profile file isn't there by default. You have to create it on your own.

Go into your user folder in finder. The .bash_profile file should be findable there. -> HD/Users/[USERNAME]

Remember: Files with a point at the beginning '.' are hidden by default.

To show hidden files in Mac OS Finder:

Press: Command + Shift + .

If it's not existing, you have to create .bash_profile on your own.

Open terminal app and switch into user folder with simple command:

cd

If it's not existing, use this command to create the file:

touch .bash_profile

STEP 2

If you can't memorise the nerdy commands for save and close in vim, nano etc (the way recommended above) the easiest way to edit is to open .bash_profile (or the .zshenv) file in your favored code editor (Sublime, Visual Studio Code, etc.).

Finder -> User folder. Right click -> open with : Visual Studio Code (or other code editor). Or drag it on app in dock.

… and there you can edit it, pass export commands in new lines.


If you are using macOS v10.15 (Catalina), you need to update the .zshrc file instead of file .bash_profile or .profile.


For beginners: To create your .bash_profile file in your home directory on macOS, run:

nano ~/.bash_profile

Then you can paste in the following:

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

As you can see, it includes some example aliases and an environment variable at the bottom.

One you're done making your changes, follow the instructions at the bottom of the Nano editor window to WriteOut (Ctrl + O) and Exit (Ctrl + X). Then quit your Terminal and reopen it, and you will be able to use your newly defined aliases and environment variables.