Manage the Windows System PATH
Note that not all Windows applications will rehash the PATH environment variable, Only the ones that listen to the WM_SETTINGCHANGE message http://support.microsoft.com/kb/104011
Add the directory to the SYSTEM path in the index location.
Kwargs:
- rehash (
bool
, optional):If the registry was updated, and this value is set to
True
, sends a WM_SETTINGCHANGE broadcast to refresh the environment variables. Set this toFalse
to skip this broadcast.
True
if path was added, otherwise False
.
CLI Examples:
# Will add to the beginning of the path
salt '*' win_path.add 'c:\python27' 0
# Will add to the end of the path
salt '*' win_path.add 'c:\python27' index='-1'
Check if the directory is configured in the SYSTEM path Case-insensitive and ignores trailing backslash
path (str) -- Path to the directory to check
True
if path exists, otherwise False
.
CLI Example:
salt '*' win_path.exists 'c:\python27'
salt '*' win_path.exists 'c:\python27\'
salt '*' win_path.exists 'C:\pyThon27'
Returns a list of items in the SYSTEM path
CLI Example:
salt '*' win_path.get_path
Send a WM_SETTINGCHANGE Broadcast to Windows to refresh the Environment variables for new processes.
Note
This will only affect new processes that aren't launched by services. To
apply changes to the path to services, the host must be restarted. The
salt-minion
, if running as a service, will not see changes to the
environment until the system is restarted. See
MSDN Documentation
CLI Example:
salt '*' win_path.rehash
Remove the directory from the SYSTEM path
path (str) -- Directory to remove from path
Kwargs:
- rehashTrue
If the registry was updated, and this value is set to
True
, sends a WM_SETTINGCHANGE broadcast to refresh the environment variables. Set this toFalse
to skip this broadcast.
True
if successful, otherwise False
.
CLI Example:
# Will remove C:\Python27 from the path
salt '*' win_path.remove 'c:\\python27'