Manage PATH on Windows 10, Mac, and Linux with various Shells
pathman list
pathman add ~/.local/bin
pathman remove ~/.local/bin
pathman version
pathman help
Where is the PATH managed?
- Windows 10: stores
PATH
in the registry. - Mac & Linux: stores
PATH
in~/.config/envman/PATH.env
Note for Windows 10 users: due to differences in how cmd.exe
, PowerShell, and pathman
use and interpret strings, spaces, paths, and variables, you'll get more consistent results if you:
- Use
~
rather than%USERPROFILE%
or$Env:USERPROFILE
- Use
/
rather than\
for delimiting paths
Mac, Linux:
curl -s https://webinstall.dev/pathman | bash
Windows 10:
This can be run from cmd.exe
or PowerShell (curl.exe
is a native part of Windows 10).
curl.exe -sA "MS" https://webinstall.dev/pathman | powershell
- Download
- Add to
PATH
Or install via npm
:
npm install -g pathman
mkdir %userprofile%\bin
move pathman.exe %userprofile%\bin\pathman.exe
%userprofile%\bin\pathman.exe add ~/bin
mkdir -p ~/.local/bin
mv ./pathman ~/.local/bin
pathman add ~/.local/bin
Webi (https://webinstall.dev/pathman) is the preferred install method, but you can also download from Git Releases: https://git.rootprojects.org/root/pathman/releases.
MacOS (including Apple Silicon M1), Linux, Raspberry Pi:
tar xvf pathman-v*.tar.gz
chmod a+x ./pathman
./pathman --help
Windows 10:
tar.exe xvf pathman-v*.zip
.\pathman.exe --help
- MacOS
- Apple Silicon M1
- Intel x86_64
- Windows 10, 8, 7
- Linux
- amd64 / x86_64
- 386
- Raspberry Pi (Linux ARM)
- RPi 4 (64-bit armv8)
- RPi 3 (armv7)
- ARMv6
- RPi Zero (armv5)
pathman add ~/.local/bin
Saved PATH changes. To set the PATH immediately, update the current session:
export PATH="/Users/me/.local/bin:$PATH"
pathman remove ~/.local/bin
Saved PATH changes. To set the PATH immediately, update the current session:
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
pathman list
pathman-managed PATH entries:
$HOME/.local/bin
other PATH entries:
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin
You can use ~
as a shortcut for %USERPROFILE%
.
pathman add ~\.local\bin
The registry will be used, even when your using Node Bash, Git Bash, or MINGW.
git clone https://git.rootprojects.org/root/pathman.git
go mod tidy
go mod vendor
go generate -mod=vendor ./...
go build -mod=vendor
./pathman list