I am trying to add C:xamppphp
to my system PATH
environment variable in Windows.
I have already added it using the Environment Variables dialog box.
But when I type into my console:
C:>path
it doesn’t show the new C:xamppphp
directory:
PATH=D:Program FilesAutodeskMaya2008bin;C:Ruby192bin;C:WINDOWSsystem32;C:WINDOWS;
C:WINDOWSSystem32Wbem;C:PROGRA~1DISKEE~2DISKEE~1;c:Program FilesMicrosoft SQL
Server90Toolsbinn;C:Program FilesQuickTimeQTSystem;D:Program FilesTortoiseSVNbin
;D:Program FilesBazaar;C:Program FilesAndroidandroid-sdktools;D:Program Files
Microsoft Visual StudioCommonToolsWinNT;D:Program FilesMicrosoft Visual StudioCommon
MSDev98Bin;D:Program FilesMicrosoft Visual StudioCommonTools;D:Program Files
Microsoft Visual StudioVC98bin
I have two questions:
- Why did this happen? Is there something I did wrong?
- Also, how do I add directories to my
PATH
variable using the console (and programmatically, with a batch file)?
asked Mar 3, 2012 at 12:58
8
Option 1
After you change PATH
with the GUI, close and reopen the console window.
This works because only programs started after the change will see the new PATH
.
Option 2
This option only affects your current shell session, not the whole system. Execute this command in the command window you have open:
set PATH=%PATH%;C:yourpathhere
This command appends C:yourpathhere
to the current PATH
. If your path includes spaces, you do not need to include quote marks.
Breaking it down:
set
– A command that changes cmd’s environment variables only for the current cmd session; other programs and the system are unaffected.PATH=
– Signifies thatPATH
is the environment variable to be temporarily changed.%PATH%;C:yourpathhere
– The%PATH%
part expands to the current value ofPATH
, and;C:yourpathhere
is then concatenated to it. This becomes the newPATH
.
answered Mar 3, 2012 at 13:03
JimRJimR
15.1k2 gold badges20 silver badges26 bronze badges
12
WARNING: This solution may be destructive to your PATH, and the stability of your system. As a side effect, it will merge your user and system PATH, and truncate PATH to 1024 characters. The effect of this command is irreversible. Make a backup of PATH first. See the comments for more information.
Don’t blindly copy-and-paste this. Use with caution.
You can permanently add a path to PATH
with the setx
command:
setx /M path "%path%;C:yourpathhere"
Remove the /M
flag if you want to set the user PATH
instead of the system PATH
.
Notes:
- The
setx
command is only available in Windows 7 and later. -
You should run this command from an elevated command prompt.
-
If you only want to change it for the current session, use set.
StayOnTarget
10.9k10 gold badges49 silver badges75 bronze badges
answered Feb 28, 2015 at 5:12
NafscriptNafscript
4,9572 gold badges16 silver badges15 bronze badges
15
This only modifies the registry. An existing process won’t use these values. A new process will do so if it is started after this change and doesn’t inherit the old environment from its parent.
You didn’t specify how you started the console session. The best way to ensure this is to exit the command shell and run it again. It should then inherit the updated PATH environment variable.
answered Mar 3, 2012 at 13:23
Hans PassantHans Passant
912k145 gold badges1670 silver badges2507 bronze badges
6
You don’t need any set
or setx
command. Simply open the terminal and type:
PATH
This shows the current value of PATH variable. Now you want to add directory to it? Simply type:
PATH %PATH%;C:xamppphp
If for any reason you want to clear the PATH variable (no paths at all or delete all paths in it), type:
PATH ;
Update
Like Danial Wilson noted in comment below, it sets the path only in the current session. To set the path permanently, use setx
but be aware, although that sets the path permanently, but not in the current session, so you have to start a new command line to see the changes. More information is here.
To check if an environmental variable exist or see its value, use the ECHO command:
echo %YOUR_ENV_VARIABLE%
answered Jul 1, 2015 at 15:11
zarzar
10.9k13 gold badges90 silver badges171 bronze badges
6
I would use PowerShell instead!
To add a directory to PATH using PowerShell, do the following:
$PATH = [Environment]::GetEnvironmentVariable("PATH")
$xampp_path = "C:xamppphp"
[Environment]::SetEnvironmentVariable("PATH", "$PATH;$xampp_path")
To set the variable for all users, machine-wide, the last line should be like:
[Environment]::SetEnvironmentVariable("PATH", "$PATH;$xampp_path", "Machine")
In a PowerShell script, you might want to check for the presence of your C:xamppphp
before adding to PATH (in case it has been previously added). You can wrap it in an if
conditional.
So putting it all together:
$PATH = [Environment]::GetEnvironmentVariable("PATH", "Machine")
$xampp_path = "C:xamppphp"
if( $PATH -notlike "*"+$xampp_path+"*" ){
[Environment]::SetEnvironmentVariable("PATH", "$PATH;$xampp_path", "Machine")
}
Better still, one could create a generic function. Just supply the directory you wish to add:
function AddTo-Path{
param(
[string]$Dir
)
if( !(Test-Path $Dir) ){
Write-warning "Supplied directory was not found!"
return
}
$PATH = [Environment]::GetEnvironmentVariable("PATH", "Machine")
if( $PATH -notlike "*"+$Dir+"*" ){
[Environment]::SetEnvironmentVariable("PATH", "$PATH;$Dir", "Machine")
}
}
You could make things better by doing some polishing. For example, using Test-Path
to confirm that your directory actually exists.
answered Mar 17, 2015 at 20:24
Ifedi OkonkwoIfedi Okonkwo
3,3064 gold badges31 silver badges45 bronze badges
4
Safer SETX
Nod to all the comments on the @Nafscript’s initial SETX
answer.
SETX
by default will update your user path.SETX ... /M
will update your system path.%PATH%
contains the system path with the user path appended
Warnings
- Backup your
PATH
—SETX
will truncate your junk longer than 1024 characters - Don’t call
SETX %PATH%;xxx
— adds the system path into the user path - Don’t call
SETX %PATH%;xxx /M
— adds the user path into the system path - Excessive batch file use can cause blindness1
The ss64 SETX page has some very good examples. Importantly it points to where the registry keys are for SETX
vs SETX /M
User Variables:
HKCUEnvironment
System Variables:
HKLMSYSTEMCurrentControlSetControlSession ManagerEnvironment
Usage instructions
Append to User PATH
append_user_path.cmd
@ECHO OFF
REM usage: append_user_path "path"
SET Key="HKCUEnvironment"
FOR /F "usebackq tokens=2*" %%A IN (`REG QUERY %Key% /v PATH`) DO Set CurrPath=%%B
ECHO %CurrPath% > user_path_bak.txt
SETX PATH "%CurrPath%";%1
Append to System PATH
append_system_path.cmd
. Must be run as administrator.
(It’s basically the same except with a different Key
and the SETX /M
modifier.)
@ECHO OFF
REM usage: append_system_path "path"
SET Key="HKLMSYSTEMCurrentControlSetControlSession ManagerEnvironment"
FOR /F "usebackq tokens=2*" %%A IN (`REG QUERY %Key% /v PATH`) DO Set CurrPath=%%B
ECHO %CurrPath% > system_path_bak.txt
SETX PATH "%CurrPath%";%1 /M
Alternatives
Finally there’s potentially an improved version called SETENV recommended by the ss64 SETX page that splits out setting the user or system environment variables.
Example
Here’s a full example that works on Windows 7 to set the PATH
environment variable system wide. The example detects if the software has already been added to the PATH
before attempting to change the value. There are a number of minor technical differences from the examples given above:
@echo off
set OWNPATH=%~dp0
set PLATFORM=mswin
if defined ProgramFiles(x86) set PLATFORM=win64
if "%PROCESSOR_ARCHITECTURE%"=="AMD64" set PLATFORM=win64
if exist "%OWNPATH%textexmf-mswinbincontext.exe" set PLATFORM=mswin
if exist "%OWNPATH%textexmf-win64bincontext.exe" set PLATFORM=win64
rem Check if the PATH was updated previously
echo %PATH% | findstr "texmf-%PLATFORM%" > nul
rem Only update the PATH if not previously updated
if ERRORLEVEL 1 (
set Key="HKLMSYSTEMCurrentControlSetControlSession ManagerEnvironment"
for /F "USEBACKQ tokens=2*" %%A in (`reg query %%Key%% /v PATH`) do (
if not "%%~B" == "" (
rem Preserve the existing PATH
echo %%B > currpath.txt
rem Update the current session
set PATH=%PATH%;%OWNPATH%textexmf-%PLATFORM%bin
rem Persist the PATH environment variable
setx PATH "%%B;%OWNPATH%textexmf-%PLATFORM%bin" /M
)
)
)
1. Not strictly true
Dave Jarvis
29.9k39 gold badges177 silver badges310 bronze badges
answered Dec 29, 2016 at 12:04
icc97icc97
10.6k8 gold badges68 silver badges88 bronze badges
0
Handy if you are already in the directory you want to add to PATH:
set PATH=%PATH%;%CD%
It works with the standard Windows cmd, but not in PowerShell.
For PowerShell, the %CD%
equivalent is [System.Environment]::CurrentDirectory
.
answered Mar 18, 2016 at 16:09
nclordnclord
1,2271 gold badge16 silver badges17 bronze badges
2
Aside from all the answers, if you want a nice GUI tool to edit your Windows environment variables you can use Rapid Environment Editor.
Try it! It’s safe to use and is awesome!
answered Feb 17, 2016 at 4:10
NetoricaNetorica
18.1k17 gold badges72 silver badges108 bronze badges
1
- Command line changes will not be permanent and will be lost when the console closes.
- The path works like first comes first served.
- You may want to override other already included executables. For instance, if you already have another version on your path and you want to add different version without making a permanent change on path, you should put the directory at the beginning of the command.
To override already included executables;
set PATH=C:xamppphp;%PATH%;
answered Sep 6, 2016 at 14:37
hevihevi
2,3501 gold badge32 silver badges51 bronze badges
Use pathed from gtools.
It does things in an intuitive way. For example:
pathed /REMOVE "c:myfolder"
pathed /APPEND "c:myfolder"
It shows results without the need to spawn a new cmd!
answered Mar 19, 2019 at 9:37
womdwomd
2,97325 silver badges19 bronze badges
1
Regarding point 2, I’m using a simple batch file that is populating PATH
or other environment variables for me. Therefore, there isn’t any pollution of environment variables by default. This batch file is accessible from everywhere so I can type:
mybatchfile
Output:
-- Here all environment variables are available
And:
php file.php
answered Oct 30, 2015 at 14:22
3
Checking the above suggestions on Windows 10 LTSB, and with a glimpse on the «help» outlines (that can be viewed when typing ‘command /?’ on the cmd), brought me to the conclusion that the PATH command changes the system environment variable Path values only for the current session, but after reboot all the values reset to their default- just as they were prior to using the PATH command.
On the other hand using the SETX command with administrative privileges is way more powerful. It changes those values for good (or at least until the next time this command is used or until next time those values are manually GUI manipulated… ).
The best SETX syntax usage that worked for me:
SETX PATH "%PATH%;C:pathtowherethecommandresides"
where any equal sign ‘=’ should be avoided, and don’t you worry about spaces! There isn’t any need to insert any more quotation marks for a path that contains spaces inside it — the split sign ‘;’ does the job.
The PATH keyword that follows the SETX defines which set of values should be changed among the System Environment Variables possible values, and the %PATH% (the word PATH surrounded by the percent sign) inside the quotation marks, tells the OS to leave the existing PATH values as they are and add the following path (the one that follows the split sign ‘;’) to the existing values.
answered Nov 22, 2016 at 20:34
1
If you run the command cmd
, it will update all system variables for that command window.
answered Oct 17, 2018 at 2:06
1
In a command prompt you tell Cmd to use Windows Explorer’s command line by prefacing it with start
.
So start Yourbatchname
.
Note you have to register as if its name is batchfile.exe
.
Programs and documents can be added to the registry so typing their name without their path in the Start — Run dialog box or shortcut enables Windows to find them.
This is a generic reg file. Copy the lines below to a new Text Document and save it as anyname.reg. Edit it with your programs or documents.
In paths, use \
to separate folder names in key paths as regedit uses a single to separate its key names. All reg files start with REGEDIT4. A semicolon turns a line into a comment. The
@
symbol means to assign the value to the key rather than a named value.
The file doesn’t have to exist. This can be used to set Word.exe to open Winword.exe.
Typing start batchfile
will start iexplore.exe.
REGEDIT4
;The bolded name below is the name of the document or program, <filename>.<file extension>
[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionApp PathsBatchfile.exe]
; The @ means the path to the file is assigned to the default value for the key.
; The whole path in enclosed in a quotation mark ".
@=""C:\Program Files\Internet Explorer\iexplore.exe""
; Optional Parameters. The semicolon means don't process the line. Remove it if you want to put it in the registry
; Informs the shell that the program accepts URLs.
;"useURL"="1"
; Sets the path that a program will use as its' default directory. This is commented out.
;"Path"="C:\Program Files\Microsoft Office\Office\"
You’ve already been told about path in another answer. Also see doskey /?
for cmd macros (they only work when typing).
You can run startup commands for CMD. From Windows Resource Kit Technical Reference
AutoRun
HKCUSoftwareMicrosoftCommand Processor
Data type Range Default value
REG_SZ list of commands There is no default value for this entry.
Description
Contains commands which are executed each time you start Cmd.exe.
answered Dec 21, 2016 at 1:08
A better alternative to Control Panel is to use this freeware program from SourceForge called Pathenator.
However, it only works for a system that has .NET 4.0 or greater such as Windows 7, Windows 8, or Windows 10.
answered Aug 28, 2017 at 1:24
BimoBimo
5,5972 gold badges35 silver badges57 bronze badges
0
As trivial as it may be, I had to restart Windows when faced with this problem.
I am running Windows 7 x64. I did a manual update to the system PATH variable. This worked okay if I ran cmd.exe from the stat menu. But if I type «cmd» in the Windows Explorer address bar, it seems to load the PATH from elsewhere, which doesn’t have my manual changes.
(To avoid doubt — yes, I did close and rerun cmd a couple of times before I restarted and it didn’t help.)
answered Oct 20, 2019 at 18:03
svinecsvinec
6298 silver badges9 bronze badges
3
The below solution worked perfectly.
Try the below command in your Windows terminal.
setx PATH "C:myfolder;%PATH%"
SUCCESS: Specified value was saved.
You can refer to more on here.
answered Jun 5, 2021 at 13:42
Use these commands in the Bash shell on Windows to append a new location to the PATH variable
PATH=$PATH:/path/to/mydir
Or prepend this location
PATH=/path/to/mydir:$PATH
In your case, for instance, do
PATH=$PATH:C:xamppphp
You can echo $PATH
to see the PATH variable in the shell.
answered Sep 1, 2021 at 6:48
kiriloffkiriloff
25.2k36 gold badges143 silver badges222 bronze badges
1
-
I have installed PHP that time. I extracted php-7***.zip into C:php</i>
-
Back up my current PATH environment variable: run
cmd
, and execute command:path >C:path-backup.txt
-
Get my current path value into C:path.txt file (the same way)
-
Modify path.txt (sure, my path length is more than 1024 characters, and Windows is running few years)
- I have removed duplicates paths in there, like ‘C:Windows; or C:WindowsSystem32; or C:WindowsSystem32Wbem; — I’ve got twice.
- Remove uninstalled programs paths as well. Example: C:Program FilesNonExistSoftware;
- This way, my path string length < 1024 :)))
- at the end of the path string, add
;C:php
- Copy path value only into buffer with framed double quotes! Example: «C:Windows;****;C:php» No PATH= should be there!!!
-
Open Windows PowerShell as Administrator (e.g., Win + X).
-
Run command:
setx path "Here you should insert string from buffer (new path value)"
-
Rerun your terminal (I use «Far Manager») and check:
php -v
answered Oct 24, 2018 at 20:50
SerbSerb
214 bronze badges
How to open the Environment Variables window from cmd.exe/Run… dialog
SystemPropertiesAdvanced
and click «Environment Variables», no UACrundll32 sysdm.cpl,EditEnvironmentVariables
direct, might trigger UAC
Via Can the environment variables tool in Windows be launched directly? on Server Fault.
How to open the Environment Variables window from Explorer
- right-click on «This PC»
- Click on «Properties»
- On the left panel of the window that pops up, click on «Advanced System Settings»
- Click on the «Advanced» tab
- Click on «Environment Variables» button at the bottom of the window
You can also search for Variables
in the Start menu search.
Reference images how the Environment Variables window looks like:
Windows 10
via
Windows 7
via
Windows XP
via
On Windows 10, I was able to search for set path environment variable and got these instructions:
- From the desktop, right-click the very bottom-left corner of the screen to get the Power User Task Menu.
- From the Power User Task Menu, click System.
- In the Settings window, scroll down to the Related settings section and click the System info link.
- In the System window, click the Advanced system settings link in the left navigation panel.
- In the System Properties window, click the Advanced tab, then click the Environment Variables button near the bottom of that tab.
- In the Environment Variables window (pictured below), highlight the Path variable in the System variables section and click the Edit button. Add or modify the path lines with the paths you want the computer to access. Each different directory is separated with a semicolon, as shown below:
C:Program Files;C:Winnt;C:WinntSystem32
The first time I searched for it, it immediately popped up the System Properties Window. After that, I found the above instructions.
answered Nov 12, 2020 at 1:38
JaninJanin
2721 gold badge2 silver badges7 bronze badges
Download Article
A simple guide to adding a directory to the Windows 10/11 path variable
Download Article
- Windows 7–11
- Windows XP
- Warnings
|
|
The PATH environment variable specifies in which directories the Windows command line looks for executable binaries. The process for changing it is not obvious, but it’s not too hard. Read on to learn how to change PATH.
Things You Should Know
- Adding a directory to your path makes it possible to run programs from the command line without typing the full path.
- To access your path settings, open Settings, type «path,» then click «Edit the System Environment Details.»
- While adding directories to the path is simple, don’t remove any existing path directories.
-
1
Open the «settings» application. This can be done by pressing the Windows key and clicking the gear icon in the «Start» menu. You can also search «settings» in Cortana or in the «Start» menu.
-
2
Search «path» in the settings menu.
Advertisement
-
3
Select Edit the System Environment Details. This option should be below Show Full Path in Title Bar and above Edit the Environment Details for your Account. A menu titled «System Properties» should pop up.
-
4
Click Environment Variables. This should be on the right-hand side of the menu below the Startup and Recovery section.
-
5
Select Path. You should not have to scroll down to find this option. It is in between two options titled OS and PATHEXT.
-
6
Click Edit, and proceed to edit the PATH environment variable.
Warning! Unless you want to potentially destroy your PC’s system, DO NOT edit this variable unless you know what you’re doing.
-
7
Select OK once you’re done editing. This will save any changes you may have made.
Advertisement
-
1
Create a shortcut to «My Computer». Click on «Start», mouse over «My Computer», right-click on it, and select «Show on Desktop».
-
2
Right-click on the shortcut and select Properties. A window will open.
-
3
Switch to the Advanced tab. In that tab, click on Environment Variables. Another window will open.
-
4
Scroll down until you see «Path». Select it and click on Edit. A third window will open.
-
5
Edit the PATH environment variable. Unless you really know what you’re doing, don’t remove what’s already there, only append to it. For example, you could add another directory by appending: ;C:pathtodirectory, with «pathtodirectory» being the actual path to the directory.
-
6
Click on OK. When the window closes, there should be a short delay because the environment variable is being updated. After that, you can press OK to close the other two windows, too.
-
7
Check that the environment variable changed. Open the command line by pressing ⊞ Win+R, entering cmd, and pressing ↵ Enter. Type: echo %PATH%. The output should be your updated PATH environment variable.
Advertisement
Ask a Question
200 characters left
Include your email address to get a message when this question is answered.
Submit
Advertisement
Thanks for submitting a tip for review!
-
Changing the PATH environment variable wrongly can cause your system to stop working correctly. You should have a basic understanding of what you’re doing before changing PATH.
Advertisement
About This Article
Thanks to all authors for creating a page that has been read 34,889 times.
Is this article up to date?
PATH
is an environment variable that specifies a set of directories, separated with semicolons (;
), where executable programs are located.
In this note i am showing how to print the contents of Windows PATH
environment variable from the Windows command prompt.
I am also showing how to add a directory to Windows PATH
permanently or for the current session only.
Cool Tip: List environment variables in Windows! Read More →
Print the contents of the Windows PATH
variable from cmd
:
C:> path
– or –
C:> echo %PATH%
The above commands return all directories in Windows PATH
environment variable on a single line separated with semicolons (;
) that is not very readable.
To print each entry of Windows PATH
variable on a new line, execute:
C:> echo %PATH:;=&echo.%
Cool Tip: Set environment variables in Windows! Read More →
Add To Windows PATH
Warning! This solution may be destructive as Windows truncates PATH
to 1024 characters. Make a backup of PATH
before any modifications.
Save the contents of the Windows PATH
environment variable to C:path-backup.txt
file:
C:> echo %PATH% > C:path-backup.txt
Set Windows PATH For The Current Session
Set Windows PATH
variable for the current session:
C:> set PATH="%PATH%;C:pathtodirectory"
Set Windows PATH Permanently
Run as Administrator: The setx
command is only available starting from Windows 7 and requires elevated command prompt.
Permanently add a directory to the user PATH
variable:
C:> setx path "%PATH%;C:pathtodirectory"
Permanently add a directory to the system PATH
variable (for all users):
C:> setx /M path "%PATH%;C:pathtodirectory"
Info: To see the changes after running setx
– open a new command prompt.
Введение | |
Для чего используется | |
Пример | |
Добавить директорию в PATH | |
Изучить содержимое PATH | |
Ошибки | |
Postgesql | |
Похожие статьи |
Введение
Если Вам нужно настроить PATH в Linux — перейдите
сюда
Для чего используется
Когда Вы выполняете какую-либо команду в консоли, система ищет соответствие
между названием этой команды и программой, которую можно выполнить.
Искать по всему жёсткому диску было бы слишком долго, поэтому поиск
осуществляется только по некоторым директориям.
Список этих особых директорий хранится в системной переменной PATH.
Пример
Предположим, что возникла необходимость запускать какую-то программу, например
Firefox
, непосредственно из командной строки.
Без предварительной подготовки ввод Firefox в консоль выдаст ошибку.
C:Usersa>firefox
‘firefox’ is not recognized as an internal or external command, operable program or batch file.
Чтобы решить эту проблему нужно добавить директорию с испоняемым файлом firefox в PATH
Добавить директорию в PATH
Быстрый способ перейти к редактированию PATH — нажать клавишу Win и ввести в поиск env
Пошаговый способ:
Правый клик на Этот Компьютер (This PC) → Свойства (Properties)
Дополнительные параметры системы (Advanced system settings)
Дополнительно (Advanced) → Переменные среды (Environment Variables)
Если хотите менять для всей системы, то в окошке «Переменные среды»
(System Variables)
найдите строку PATH в блоке
«Системные переменные» (System variables)
выделите кликом и нажмите кнопку «Изменить…» (Edit…)
Если хотите менять только для своего пользователя, то делайте это в блоке
«Переменные среды пользователя %USERNAME%» (User variables for %USERNAME%)
Создайте новый путь (New)
Введите адрес директории в которой лежит нужная программа. В нашем случае это
C:Program Files (x86)Mozilla Firefox
Перезапустите консоль или открываем новую и пишем там firefox.
C:Usersa>firefox
Браузер должен запуститься.
Изучить содержимое PATH
В
PowerShell
достаточно выполнить
echo $Env:Path
C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;
Или
Get-ChildItem Env:Path
Name Value
—- ——
Path C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPo…
В cmd.exe посмотреть список переменных
окружения можно выполнив команду
set
без параметров.
set
Выдача содержит системные переменные и переменные пользователя
а также дополнительную информацию. Содержимое PATH выделено зелёным.
Ошибки
-bash: syntax error near unexpected token `(‘
Скорее всего Вы пытаетесь добавить в unix PATH адрес из Windows, c пробелами, скобками и так далее.
Например:
andrey@olegovich-10:/usr/share$ export PATH=/mnt/c/Program Files (x86)/Common Files/Oracle/Java/javapath_target_1128437:$PATH
-bash: syntax error near unexpected token `(‘
Для решения этой проблемы Вам нужно экранировать пробелы и скобки. Если импортируется много путей и ввод очень длинный —
немного проще записать PATH=$PATH:/путь , если Вам подходит запись в конец.
Также нужно помнить, что все лишние пробелы сломают импорт — для проверки можно сделать весь скрипт в одну строку
в текстовом редакторе.
Также стоит помнить, что если Вы работаете в
bash под Windows
,
то переменные окружения нужно задавать через Windows.
andrey@olegovich-10:/usr/share$ export PATH=$PATH:/mnt/c/Program Files (x86)/Common Files/Oracle/Java/javapath_target_1128437
Postgesql
Приведу пример для использования psql из
bash под Windows
— это может пригодиться если Вы хотите временно добавить
путь к psql в PATH чтобы запустить
Postrgres
скрипт.
В моём случае
psql.exe
находится в папке C:Program FilesPostgreSQL12bin
PATH=$PATH:/mnt/c/Program Files/PostgreSQL/12/bin
Windows | |
Loudness Equalization | |
PowerShell | |
Посмотреть конец файла в PowerShell (аналог tail) | |
Создать новый файл в PowerShell (аналог touch) | |
Проверить контрольную сумму файла в PowerShell (аналог md5sum) | |
Windows Firewall | |
Remote Desktop Protocol | |
Драйверы в Windows | |
Режим разработчика в Windows 10 | |
BASH в Windows 10 | |
Telnet в Windows 10 | |
Системная переменная PATH | |
Установка Windows на gpt диск | |
batch file | |
pstools | |
Удалённый рабочий стол | |
Горячие клавиши |
To make it easy to run programs from the command line, you can add a directory or program to the Windows PATH. Here is how to do it.
Windows has several built-in environment variables responsible for several different features and makes your life a tad bit easier. One of the most popular and useful Windows Variables is the PATH variable. The PATH variable allows you to add directories of executables so that it is easy to use them via the command line.
Generally, you don’t have to use the command line much in Windows. However, some programs may require or function better when using them via the command line. For example, FFMPG is a command-line tool. As such, adding FFMPEG to Windows PATH will make it easy to use the FFMPEG tool to download streaming videos. Similarly, if you use a specific application or program from the command line, you can add that executable’s directory to the Windows PATH. That way, you don’t have to open the Command Prompt or PowerShell window in the executable folder. Instead, you can use the program command directly as the path is already added to the Windows PATH, and the operating system knows where to look.
So, without delay, let me show you how to add a directory or a program to Windows PATH in Windows 10 and 11.
What is the PATH variable in Windows?
PATH is one of the system variables in Windows. The primary function of PATH is to let Windows know where to look for a program when running it from the command line. By default, most system programs are added to the PATH variable. That is why you don’t have to specify the absolute program path or open the command line window in the program directory while running a command related to system applications.
You will also find the PATH variable in other operating systems like Linux and macOS.
Can I edit the PATH variable?
Yes. You can edit the Windows PATH variable from the Environment Variables screen.
There are two kinds of PATH variables in Windows. i.e., User PATH variable and System PATH variable. As you can guess, anything thing added to the User PATH variable is only applicable to your user account. To apply the path system-wide (all users), you must add the directory or program to the System PATH variable.
To add to PATH in Windows, we need to open the Environment Variables tool. Here is how.
- Press the Start key on your keyboard.
- Search and open “Edit the system environment variables.”
- Go to the “Advanced” tab.
- Click the “Environment variables” button.
- Select the “Path” variable under “User variables” or “System variables.”
- Click the “Edit” button.
- Press the “New” button.
- Type the full directory path of the program.
- Press “Enter” to confirm the path.
- Click “Ok.”
- Press the “Ok” button in the Environment Variables window.
- Click “Ok” in the System Variables window.
Detailed steps:
First, we need to open the Environment Variables tool. To do that, search for “Edit the system environment variables” and click on the result. Here, make sure you are in the “Advanced” tab, and click on the “Environment Variables” button.
The above action will open the “Environment Variables” window. Select the “Path” variable under the “User Variables” or “System Variables” section. To limit the path to your user account, select the Path variable under the User Variables section. To apply the path to all users. i.e., system-wide, select the Path variable under the System Variables section. I’m choosing the Path variable under the User Variables section.
After selecting the Path variable, click on the “Edit” button under that section.
Now, click the “New” button to add a new path to Windows PATH.
Type the full path of the executable directory and click the “Ok” button. For example, suppose the full executable path is “C:userswindowsloopappprogram.exe,” you need to type “C:userswindowsloopapp” in the blank field. Next, click the “Ok” button to save the changes.
Click “Ok” in the Environment Variables section.
Press the “Ok” button in the System Properties window.
That is it. You have successfully added a directory or program to Windows PATH. From now on, you can start using that program directly in any command-line tool.
Important note: After adding a directory or program to Windows PATH, you must close and re-open the command line tools. Otherwise, they might not recognize the changes in the PATH variable.
I hope that helps.
If you are stuck or need some help, comment below, and I will try to help as much as possible.
Sometimes we need to tell Windows where to look for a particular executable file or script. Windows provides a means to do this through the Path Environment Variable. The Path Environment Variable essentially provides the OS with a list of directories to look in for a particular .exe or file when the simple name of the file is entered at the command prompt.
For example, the Notepad.exe application resides in the C:Windowssystem32 directory. However, if we wish to open the Notepad application via the Windows Command Line, we need only type:
Opening Notepad.exe From the Windows Command Line:
C:UsersJohn> notepad
This works because the Path variable on Windows by default contains a list of directories where application files and scripts are likely to be located. Each directory in the list is separated by a semi-colon.
Similarly, there is another environment variable, PATHEXT which specifies a list of file extensions which might be found when searching for the proper file within the paths in the Path variable. This is why we are able to type simply “Notepad” at the command prompt, instead of Notepad.exe.
Windows will first search the current directory (where the command prompt is a the time the command is executed) to find a name matching the one typed into the terminal, and then search the directories in the Path variable in order, beginning with the most likely locations, and continue until either a matching file name is located, or else return the “… is not recognized blah blah” message at the terminal.
Once a file with a matching name is located, Windows attempts to match the file extension (if one is present), again in the order specified in the PATHEXT variable. If a match is found, the file is processed accordingly.
There are both User-specific and machine-level PATH variables. Machine Path variables are available globally across the machine, and can only be modified by administrators. User Environment variables can be modified by both administrators, and the user with which the current profile is associated.
Adding a Directory to the User Path Variable from the Command Line
Any user can modify their own PATH variable from the Command Line (unless they have been specifically denied this ability by an administrator).
For example, when we wish to use SQLite from the Windows Command Line, we download the SQLite binaries, and place them in the directory of choice. However, in order to use the SQLite Command Line application without either navigating directly to the folder in which we placed it, or entering the full file path into our Windows Command Line, we need to add the directory containing the SQLite.exe to our User or System PATH environment variable.
Let’s say a user has downloaded the sqlite3.dll and sqlite3.exe binaries and located them in the directory C:SQLite.
Now, in order to invoke the sqlite3.exe from the command line, we need to add the C:SQLite directory to our PATH environment variable. We can do this from the command line by using the setx command:
The setx Command – Syntax:
C:UsersJohn> setx "%path%;C:SQLite"
When we modify environment variables using setx, the changes are not available in the current Console session – in other words, in order to see our changes, we need to exit, and open a new Console window. Then, we can use the following technique:
We can examine the contents of the PATH variable by typing:
Output PATH Variable to the Console:
C:UsersJohn> echo %PATH%
Which gives the output:
Results of Echo %PATH% Command:
C:UsersJohn>echo %PATH% C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32Wind owsPowerShellv1.0;C:Program Files (x86)Windows Kits8.1Windows Performance Toolkit;C:Program FilesMicrosoft SQL Server110ToolsBinn;C:Program Files Microsoft SQL Server110DTSBinn;C:Program Files (x86)Microsoft SQL Server1 10ToolsBinn;C:Program Files (x86)Microsoft SQL Server110ToolsBinnManage mentStudio;C:Program Files (x86)Microsoft Visual Studio 10.0Common7IDEPriv ateAssemblies;C:Program Files (x86)Microsoft SQL Server110DTSBinn;C:Prog ram Files (x86)Common FilesAcronisSnapAPI;C:Program Files (x86)Windows Liv eShared;C:Program FilesCalibre2;C:Program FilesMicrosoftWeb Platform Inst aller;C:UsersJohnAppDataRoamingnpm;C:Program Files (x86)nodejs;C:Progr am Files (x86)Microsoft SDKsWindows AzureCLIwbin;C:Program Files (x86)GtkS harp2.12bin;C:Program Files (x86)Microsoft SDKsTypeScript1.0;C:SQLite
We can see here that C:SQLite has now been added to the paths available to the current user.
Adding a Directory to the System Path Variable from the Command Line
In the previous section, we used the setx command to add a directory to the current user’s Path variable. Sometimes, we want to make variables available at the system, or machine level. In that case, we use the same setx
command in conjunction with the /m flag. However, we need to run the Command Terminal as Administrator for this to work:
Add a Directory the the System PATH Variable Using the /m Flag:
C:UsersJohn> setx /m path "%path%;C:SQLite"
Adding a Directory to the Path Variable from the GUI
Or, we can do this using the GUI by navigating to Control Panel => All Control Panel Items => System, and then selecting the “Advanced System Settings” link:
Locate Advanced System Settings in Control Panels:
Then locate the “Environment Variables” button:
Open Environment Variables:
Opening Environment Variables, we see the following:
Editing Environment Variables:
Notice in the image above, there are two sections, User Variables for<Current User>, and System Variables.
Also note, there is not currently a Path variable for me, the current user. We will need to add one, and then add our new path to it:
Adding a User Path Variable in the Windows GUI:
Once we hit OK, We see we have the single item added to our user path variable.
Added Path Variable to User Environment Variables:
For some reason, this works differently than when we do this from the Command Line, when we use the setx
command from the terminal, the entirety of the system path variable is copied into the user path variable, including the new entry.
If we have Administrator permissions on our machine, we can do the same for the System PATH variable if we so choose.
Removing Directories from the PATH Variable
In some cases, we may need to remove a directory from our PATH variable. In these cases it is recommended to use the GUI, or edit the registry. It’s easiest to simply open the GUI, copy the contents of the PATH variable (either the User Path or the System Path) to a text editor, and remove the entries you want to delete. Then paste the remaining text back into the Edit Path window, and save.
Additional Resources and Items of Interest
- Installing and Using SQLite on Windows
- Getting Started with Git for the Windows Developer (Part I)
- Basic Git Command Line Reference for Windows Users
- Git: Interactively Stage Portions of a Single Changed File for Commit Using git add -p
Introduction
Recently, I needed to add a directory to the PATH system variable of Windows 10. The PATH is a system variable that allows Windows to locate executables from the command line or the Terminal window.
In this article, I will show you how to add a folder to the Windows 10 PATH variable.
Step 1. Press WIN+S to launch Windows Search on your Windows 10 machine. You will see Search Textbox.
Step 2. Type “environ..” in the Windows Search Textbox. You will see “Edit the system environment variables” as a result of the Best match list. Select this option.
Step 3. This will launch the System Properties window. On this window, we can review Computer Name, Hardware, and other Advanced properties.
On the Advanced tab, we can set Performance, User Profiles, and Startup and Recovery options. The last button is the Environment Variables. Click on this button.
Step 4. It will launch the Environment Variables window where you can see all variables and their values. As you can see from the following window, there are User variables and System variables.
In System variables, one of the variables is Path. See in the above image.
Step 5. Double click on the Path variable.
You will see a list of all Path variables where you can edit them, add a new Path variable, and delete an existing variable.
Step 6. Click on New button. It will enter a new editable row where you can type a new path.
Step 7. Click OK. Your PATH variable is now added.
Watch this video for more details: