$PATH is nothing but an environment variable on Linux, OS X, Unix-like operating systems, and Microsoft Windows. You can specify a set of directories where executable programs are located using $PATH. The $PATH variable is specified as a list of directory names separated by colon (:) characters. To print the current settings, open the Terminal and then type:
printf "%s\n" $PATH
OS X: Change your PATH environment variable
You can add path to any one of the following method:
- $HOME/.bash_profile file using export syntax.
- /etc/paths.d directory.
Method #1: $HOME/.bash_profile file
The syntax is as follows:
export PATH=$PATH:/new/dir/location1 export PATH=$PATH:/new/dir1:/dir2:/dir/path/no3
In this example, add /usr/local/sbin/modemZapp/ directory to $PATH variable. Edit the file $HOME/.bash_profile, enter:
Append the following export command:
Save and close the file. To apply changes immedialty enter:
Finally, verify your new path settings, enter:
Method #2: /etc/paths.d directory
Apple recommends the path_helper tool to generate the PATH variable i.e. helper for constructing PATH environment variable. From the man page:
The path_helper utility reads the contents of the files in the directories /etc/paths.d and /etc/manpaths.d and appends their contents to the PATH and MANPATH environment variables respectively.
(The MANPATH environment variable will not be modified unless it is already set in the environment.)
Files in these directories should contain one path element per line.
Prior to reading these directories, default PATH and MANPATH values are obtained from the files /etc/paths and /etc/manpaths respectively.
To list existing path, enter:
ls -l /etc/paths.d/
total 16 -rw-r--r-- 1 root wheel 13 Sep 28 2012 40-XQuartz
You can use the cat command to see path settings in 40-XQuartz:
To set /usr/local/sbin/modemZapp to $PATH, enter:
sudo -s 'echo "/usr/local/sbin/modemZapp" > /etc/paths.d/zmodemapp'
OR use vi text editor as follows to create /etc/paths.d/zmodemapp file:
sudo vi /etc/paths.d/zmodemapp
and append the following text:
Save and close the file. You need to reboot the system. Alternatively, you can close and reopen the Terminal app to see new $PATH changes.
- Use $HOME/.bash_profile file when you need to generate the PATH variable for a single user account.
- Use /etc/paths.d/ directory via the path_helper tool to generate the PATH variable for all user accounts on the system. This method only works on OS X Leopard and higher.
- Customize the bash shell environments from the Linux shell scripting wiki.
- UNIX: Set Environment Variable
- Man pages - bash(1), path_helper(8)
- 30 Cool Open Source Software I Discovered in 2013
- 30 Handy Bash Shell Aliases For Linux / Unix / Mac OS X
- Top 30 Nmap Command Examples For Sys/Network Admins
- 25 PHP Security Best Practices For Sys Admins
- 20 Linux System Monitoring Tools Every SysAdmin Should Know
- 20 Linux Server Hardening Security Tips
- Linux: 20 Iptables Examples For New SysAdmins
- Top 20 OpenSSH Server Best Security Practices
- Top 20 Nginx WebServer Best Security Practices
- 20 Examples: Make Sure Unix / Linux Configuration Files Are Free From Syntax Errors
- 15 Greatest Open Source Terminal Applications Of 2012
- My 10 UNIX Command Line Mistakes
- Top 10 Open Source Web-Based Project Management Software
- Top 5 Email Client For Linux, Mac OS X, and Windows Users
- The Novice Guide To Buying A Linux Laptop