Windows & Git Bash: Bash PATH to read Windows %PATH% system variable
An mingw64 git bash session uses the executable /usr/bin/bash.exe
, which doesn't access or modify the environment variable PATH
(like it would in this unrelated vbs script, for instance)
A git bash session will simply add in front of your current PATH
:
/mingw64/bin:/usr/bin:
It is possible that the mingW64 session packaged with msysgit won't consider a bin
from another mingw installation: you can check it by setting another (simpler) directory to your PATH
and see if it is still visible in your git bash session. If not, then it is a more general issue which concerns all directories that you would add to the PATH.
Here's my small workaround for a similar problem (MSYS2 bash on Windows 10).
The idea is to convert the required paths to Unix-style paths and append them to bash $PATH, all done in .bashrc.
Do not append required paths to Win PATH. Instead create a new env var in Windows, like MSYS2_WINPATH, and append all the semicolon-separated Windows path directories to this variable. Append %MSYS2_WINPATH% to %PATH%.
Now insert this in your .bashrc -
################################## Construct PATH variable ##################################
winpath=$(echo $MSYS2_WINPATH | tr ";" "\n" | sed -e 's/\\/\\\\/g' | xargs -I {} cygpath -u {})
unixpath=''
# Set delimiter to new line
IFS=$'\n'
for pth in $winpath; do unixpath+=$(echo $pth)":"; done
export PATH=$(echo $PATH:$unixpath | sed -e 's/:$//g')
unset IFS
unset unixpath
unset winpath
################################# Constructed PATH variable #################################