Переменные среды windows рабочий стол

I’m writing a Windows batch file and want to copy something to the desktop. I think I can use this:

%UserProfile%\Desktop\

However, I’m thinking, that’s probably only going to work on an English OS. Is there a way I can do this in a batch file that will work on any internationalized version?

UPDATE

I tried the following batch file:

REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop
FOR /F "usebackq tokens=3 skip=4" %%i in (`REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop`) DO SET DESKTOPDIR=%%i
FOR /F "usebackq delims=" %%i in (`ECHO %DESKTOPDIR%`) DO SET DESKTOPDIR=%%i
ECHO %DESKTOPDIR%

And got this output:

S:\>REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
    Desktop    REG_EXPAND_SZ    %USERPROFILE%\Desktop


S:\>FOR /F "usebackq tokens=3 skip=4" %i in (`REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folder
s" /v Desktop`) DO SET DESKTOPDIR=%i

S:\>FOR /F "usebackq delims=" %i in (`ECHO ECHO is on.`) DO SET DESKTOPDIR=%i

S:\>SET DESKTOPDIR=ECHO is on.

S:\>ECHO ECHO is on.
ECHO is on.

Kb.'s user avatar

Kb.

7,25013 gold badges56 silver badges75 bronze badges

asked Jan 4, 2010 at 16:40

Scott Langham's user avatar

Scott LanghamScott Langham

58.8k40 gold badges132 silver badges204 bronze badges

3

To be safe, you should use the proper APIs in Powershell (or VBScript)
Using PowerShell:

[Environment]::GetFolderPath("Desktop")

Copy something using Powershell:

Copy-Item $home\*.txt ([Environment]::GetFolderPath("Desktop"))

Here is a VBScript-example to get the desktop path:

dim WSHShell, desktop, pathstring, objFSO
set objFSO=CreateObject("Scripting.FileSystemObject")
Set WSHshell = CreateObject("WScript.Shell")
desktop = WSHShell.SpecialFolders("Desktop")
pathstring = objFSO.GetAbsolutePathName(desktop)
WScript.Echo pathstring

answered Jan 4, 2010 at 17:08

Kb.'s user avatar

2

I found that the best solution is to use a vbscript together with the batch file.

Here is the batch file:

@ECHO OFF
FOR /F "usebackq delims=" %%i in (`cscript findDesktop.vbs`) DO SET DESKTOPDIR=%%i
ECHO %DESKTOPDIR%

Here is findDesktop.vbs file:

set WshShell = WScript.CreateObject("WScript.Shell")
strDesktop = WshShell.SpecialFolders("Desktop")
wscript.echo(strDesktop)

There may be other solutions but I personally find this one less hackish.

I tested this on an English PC and also a French PC — it seems to work (Windows XP).

EDIT: Use the accepted answer, this will not work if the default location isn’t being used, for example: The user moved the desktop to another drive like D:\Desktop


At least on Windows XP, Vista and 7 you can use the "%UserProfile%\Desktop" safely.

Windows XP en-US it will expand to "C:\Documents and Settings\YourName\Desktop"
Windows XP pt-BR it will expand to "C:\Documents and Settings\YourName\Desktop"
Windows 7 en-US it will expand to "C:\Users\YourName\Desktop"
Windows 7 pt-BR it will expand to "C:\Usuarios\YourName\Desktop"

On XP you can’t use this to others folders exept for Desktop
My documents turning to Meus Documentos and Local Settings to Configuracoes locais Personaly I thinks this is a bad thing when projecting a OS.

answered Oct 29, 2012 at 17:40

Vitim.us's user avatar

Vitim.usVitim.us

20.9k15 gold badges94 silver badges110 bronze badges

7

KB’s answer to use [Environment]::GetFolderPath("Desktop") is obviously the official Windows API for doing this.

However, if you’re working interactively at the prompt, or just want something that works on your machine, the tilda (~) character refers to the current user’s home folder. So ~/desktop is the user’s desktop folder.

Ehtesh Choudhury's user avatar

answered Apr 18, 2010 at 20:04

Saqib's user avatar

SaqibSaqib

7,2827 gold badges42 silver badges55 bronze badges

3

Not only would that not work for an International version of Windows, it would fail if the user had edited the Registry to make their Desktop folder reside somewhere else. You can query the Registry for the file location using the REG command:

REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop

To get this into a variable use something like this:

FOR /F "usebackq tokens=3 skip=4" %%i in (`REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop`) DO SET DESKTOPDIR=%%i
FOR /F "usebackq delims=" %%i in (`ECHO %DESKTOPDIR%`) DO SET DESKTOPDIR=%%i
ECHO %DESKTOPDIR%

answered Jan 4, 2010 at 16:45

David Webb's user avatar

David WebbDavid Webb

191k57 gold badges313 silver badges299 bronze badges

4

you could also open a DOS command prompt and execute the set command.

This will give you an idea what environment variables are available on your system.

E.g. — since you where specifically asking for a non-english Windows — heres is an example of my own German Edition (Window7-64bit) :

set > env.txt
type env.txt

ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\SOF\AppData\Roaming
CommonProgramFiles=C:\Program Files\Common Files
CommonProgramFiles(x86)=C:\Program Files (x86)\Common Files
CommonProgramW6432=C:\Program Files\Common Files
COMPUTERNAME=VMSOF
ComSpec=C:\Windows\system32\cmd.exe
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=\Users\SOF
LOCALAPPDATA=C:\Users\SOF\AppData\Local
LOGONSERVER=\\VMSOF
NUMBER_OF_PROCESSORS=2
OS=Windows_NT
Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\TortoiseSVN\bin;C:\Program Files (x86)\CMake 2.8\bin;C:\Program Files (x86)\emacs-22.3\bin;C:\Program Files (x86)\GnuWin32\bin;
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
PROCESSOR_ARCHITECTURE=AMD64
PROCESSOR_IDENTIFIER=AMD64 Family 15 Model 67 Stepping 3, AuthenticAMD
PROCESSOR_LEVEL=15
PROCESSOR_REVISION=4303
ProgramData=C:\ProgramData
ProgramFiles=C:\Program Files
ProgramFiles(x86)=C:\Program Files (x86)
ProgramW6432=C:\Program Files
PROMPT=$P$G
PSModulePath=C:\Windows\system32\WindowsPowerShell\v1.0\Modules\
PUBLIC=C:\Users\Public
SESSIONNAME=Console
SystemDrive=C:
SystemRoot=C:\Windows
TEMP=C:\Users\SOF\AppData\Local\Temp
TMP=C:\Users\SOF\AppData\Local\Temp
USERDOMAIN=VMSOF
USERNAME=SOF
USERPROFILE=C:\Users\SOF
VBOX_INSTALL_PATH=C:\Program Files\Sun\VirtualBox\
VS90COMNTOOLS=C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools\
windir=C:\Windows

answered Jan 4, 2010 at 17:43

4

in windows 7 this returns the desktop path:

FOR /F "usebackq tokens=3 " %%i in (`REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop`) DO SET DESKTOPDIR=%%i 
FOR /F "usebackq delims=" %%i in (`ECHO %DESKTOPDIR%`) DO SET DESKTOPDIR=%%i 
ECHO %DESKTOPDIR% 

answered Sep 21, 2011 at 19:47

Osama Rajab's user avatar

1

If you wish to use the

[Environment]::GetFolderPath("Desktop")

from within a cmd.exe, you may do so (thanks to MS User Marian Pascalau on this thread)

set dkey=Desktop
set dump=powershell.exe -NoLogo -NonInteractive "Write-Host $([System.Environment]::GetFolderPath([System.Environment+SpecialFolder]::%dkey%))"
for /F %%i in ('%dump%') do set dir=%%i

echo Desktop directory is %dir%

answered Mar 17, 2020 at 18:22

Niko Fohr's user avatar

Niko FohrNiko Fohr

28.7k10 gold badges95 silver badges98 bronze badges

This is not a solution but I hope it helps: This comes close except that when the KEY = %userprofile%\desktop the copy fails even though zdesktop=%userprofile%\desktop. I think because the embedded %userprofile% is not getting translated.

REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop>z.out
for /f "tokens=3 skip=4" %%t in (z.out) do set zdesktop=%%t
copy myicon %zdesktop%
set zdesktop=
del z.out

So it sucessfully parses out the REG key but if the key contains an embedded %var% it doesn’t get translated during the copy command.

answered Jan 4, 2010 at 17:41

fupsduck's user avatar

fupsduckfupsduck

3,1391 gold badge19 silver badges18 bronze badges

I had a similar problem (and VBScript or PowerShell was not an option) and the code I found in this article did not work for me. I had problems with OS versions and language versions. After some experiments I’ve come to this solution:

for /f "usebackq tokens=2,3*" %%A in (`REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Desktop"`) do if %%A==REG_EXPAND_SZ call :reparse set desktopdir=%%B
echo %desktopdir%
goto :EOF

:reparse
%*
goto :EOF

This code works for me in English and Polish versions of Windows 7 and Windows XP.

The :reparse subroutine allows for delayed expansion of environment variables.

answered Jan 9, 2012 at 15:57

MBu's user avatar

MBuMBu

2,9002 gold badges19 silver badges25 bronze badges

While I realize this is a bit of an older post, I thought this might help people in a similar situation. I made a quick one line VBScript to pull info for whatever special folder you would like (no error checking though) and it works like this:

Create a file «GetShellFolder.vbs» with the following line:

WScript.Echo WScript.CreateObject("WScript.Shell").SpecialFolders(WScript.Arguments(0))

I always make sure to copy cscript.exe (32-bit version) to the same folder as the batch file I am running this from, I will assume you are doing the same (I have had situations where users have somehow removed C:\Windows\system32 from their path, or managed to get rid of cscript.exe, or it’s infected or otherwise doesn’t work).

Now copy the file to be copied to the same folder and create a batch file in there with the following lines:

for /f "delims=" %%i in ('^""%~dp0cscript.exe" "%~dp0GetShellFolder.vbs" "Desktop" //nologo^"') DO SET SHELLDIR=%%i
copy /y "%~dp0<file_to_copy>" "%SHELLDIR%\<file_to_copy>"

In the above code you can replace «Desktop» with any valid special folder (Favorites, StartMenu, etc. — the full official list is at https://msdn.microsoft.com/en-us/library/0ea7b5xe%28v=vs.84%29.aspx) and of course <file_to_copy> with the actual file you want placed there. This saves you from trying to access the registry (which you can’t do as a limited user anyway) and should be simple enough to adapt to multiple applications.

Oh and for those that don’t know the "%~dp0" is just the directory from which the script is being called. It works for UNC paths as well which makes the batch file using it extremely portable. That specifically ends in a trailing «\» though so it can look a little odd at first glance.

answered Mar 23, 2016 at 17:00

Improv's user avatar

@Dave Webb’s answer is probably the way to go. The only other thing I can think of are the CSIDLs:

CSIDL_DESKTOPDIRECTORY

The file system directory used to
physically store file objects on the
desktop (which should not be confused
with the desktop folder itself). A
typical path is C:\Documents and
Settings\username\Desktop.

I have no idea how to get hold of those from the command line, though.

answered Jan 4, 2010 at 16:50

Pekka's user avatar

PekkaPekka

443k143 gold badges972 silver badges1089 bronze badges

Multilingual Version, tested on Japanese OS
Batch File

set getdesk=REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop
FOR /f "delims=(=" %%G IN ('%getdesk% ^|find "_SZ"') DO set desktop=%%G
set desktop1=%desktop:*USERPROFILE%\=%
cd "%userprofile%\%desktop1%"
set getdesk=
set desktop1=
set desktop=

answered Mar 27, 2013 at 3:05

Josh's user avatar

JoshJosh

112 bronze badges

This should work no matter what language version of Windows it is and no matter where the folder is located. It also doesn’t matter whether there are any spaces in the folder path.

FOR /F "tokens=2*" %%A IN ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop^|FIND/I "desktop"') DO SET Desktop=%%B
ECHO %Desktop%

In case of Windows 2000 (and probably NT 4.0) you need to copy reg.exe to the %windir% folder manually since it is not available there by default.

answered Jun 27, 2013 at 6:27

tomasz86's user avatar

tomasz86tomasz86

89910 silver badges9 bronze badges

I use this code to get the User desktop and Public desktop paths from the registry, tested on Windows XP SP2 pt-PT and Windows 10 b14393 en-US, so it probably works in Vista/7/8 and other languages.

:: get user desktop and public desktop paths
for /f "tokens=* delims= " %%a in ('reg query "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop ^|find /i "REG_"') do set "batch_userdesktop=%%a"
for /f "tokens=* delims= " %%a in ('reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Common Desktop" ^|find /i "REG_"') do set "batch_publicdesktop=%%a"

:: remove everything up to and including "_SZ"
set "batch_userdesktop=%batch_userdesktop:*_sz=%"
set "batch_publicdesktop=%batch_publicdesktop:*_sz=%%

:: remove leading spaces and TABs
:loop
if "%batch_userdesktop:~0,1%"==" " set "batch_userdesktop=%batch_userdesktop:~1%" & goto loop
if "%batch_publicdesktop:~0,1%"==" " set "batch_publicdesktop=%batch_publicdesktop:~1%" & goto loop
if "%batch_userdesktop:~0,1%"=="    " set "batch_userdesktop=%batch_userdesktop:~1%" & goto loop
if "%batch_publicdesktop:~0,1%"=="  " set "batch_publicdesktop=%batch_publicdesktop:~1%" & goto loop

The last two lines include a TAB inside the » «, some text editors add spaces when you press TAB, so make sure you have an actual TAB instead of spaces.

I’m not sure the code requires setlocal enabledelayedexpansion, it’s part of my SETVARS.CMD which I call from other batches to set common variables like cpu architecture, account language, windows version and service pack, path to user/public desktop, etc.

answered Nov 11, 2016 at 14:04

Johnye's user avatar

I know this is kind of an old topic, but I would use the Powershell variable

$env:UserProfile 

To use it to get to the desktop, it would be:

cd $env:UserProfile\desktop

This works both locally and remotely on windows 7. Hope this is useful as I ran across a situation where a client machine didn’t have a value in $home.

answered Nov 9, 2014 at 18:54

Gearhead351's user avatar

2

Quite old topic. But I want to give my 2 cents…

I’ve slightly modified tomasz86 solution, to look in the old style «Shell Folders» instead of «User Shell Folders», so i don’t need to expand the envvar %userprofile%

Also there is no dependency from powershell/vbscript/etc….

for /f "usebackq tokens=2,3*" %%A in (`REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Desktop"`) do if %%A==REG_SZ  set desktopdir=%%B
echo %desktopdir%

Hope it helps.

answered Nov 17, 2019 at 9:21

Dotmax's user avatar

TL;DR

%HOMEDRIVE%%HOMEPATH%\Desktop seems to be the safest way.

Discussion

Assumptions about which drive a thing is on are quite fragile in Windows as it lacks a unified directory tree where mounts would map to directories internally. Therefore the %HOMEDRIVE% variable is important to reference to make sure you’re on the right one (it isn’t always C:\!).

Non-English locales will usually have localized names for things like «Desktop» and «Pictures» and whatnot, but fortunately they are all aliases that point to Desktop, which seems to be the underlying canonical directory name regardless of locale (we use this safely here in Japan, Thailand, Israel and the US).

The big quirk comes with determining whether %UserProfile% points to the user’s actual profile base dir, or their Desktop or somewhere completely different. I’m not really a Windows dev, but what I’ve found is the profile dir is for settings, but the %HOMEPATH% is for the user’s own files, so this points to the directory root that leads to Desktop/Downloads/Pictures/etc. This tends to make %HOMEDRIVE%%HOMEPATH%\Desktop the safest way.

answered Dec 21, 2020 at 12:58

zxq9's user avatar

zxq9zxq9

13.1k1 gold badge43 silver badges60 bronze badges

These commands will print the Desktop path on cmd.exe:

powershell "[System.Environment]::GetFolderPath([System.Environment+SpecialFolder]::Desktop)"
FOR /F "tokens=2*" %i IN ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop ^| findstr "desktop"') DO echo %j

answered Mar 24 at 16:18

Amit Naidu's user avatar

Amit NaiduAmit Naidu

2,5042 gold badges24 silver badges33 bronze badges

Обновлено 28.06.2022

переменные среды windows

Добрый день уважаемые читатели и гости блога, сегодня я с вами хочу обсудить вот такую тему, что такое переменные среды Windows, где их можно использовать, как в обычной практике пользователя, так и в практике системного администратора, я вам приведу несколько примеров. Как все это дело настраивается и изменяется под ваши нужны, на мой взгляд это фундаментальные знания, понимание которых вам лучше покажет принцип работы операционных систем семейства Windows.

Что такое переменные среды windows

Давайте разберемся в понятии, и так переменная окружения (environment variable) это специального рода ссылки уменьшенного размера, на определенные объекты операционной системы Windows, используемые разными программами для хранения информации и взаимодействия с ней. Можно провести аналогию с относительными ссылками на сайтах, где нет явного указания на протокол. Чаще всего это пути до конкретных директорий в ОС.

ИЛИ

Переменная среды — это динамический «объект» на компьютере, содержащий редактируемое значение, которое может использоваться одной или несколькими программами в Windows. Переменные среды помогают программам узнать, в какой каталог устанавливать файлы, где хранить временные файлы и где найти настройки профиля пользователя. Они помогают формировать среду, которую программы на вашем компьютере используют для запуска.

Где используют переменные среды Windows

Приведу несколько примеров:

  • В скриптах > когда нужно например каждому пользователю сделать какую-то настройку, для примера положить на рабочий стол новую папку с документами. Так как для каждого пользователя путь до рабочего стола свой, вида C:\Users\lacky\Desktop, а можно обратиться и по относительному пути за счет переменной %HOMEPATH%, если вы в проводнике введете %HOMEPATH%\Desktop, то попадете на рабочий стол текущего пользователя.

переменные среды windows 10

  • в групповой политике, для настройки пользовательских окружений, например перемещаемые профили.
  • Оптимизация кода > если в коде очень часто используются одни и те же пути к файлам или папкам, а так же ключам реестра, вы можете легко назначить короткую переменную для дальнейшего использования. Ниже я вам приведу сводный список по переменным средам windows 10 и предыдущих версий, а так же покажу как их создавать и менять.

Все переменные среды Windows 10 и других версий в своем составе имеют специальный оператор %. Он необходим, чтобы операционная система могла обработать поисковый запрос. Простой пример вы ищите папку TEMP и не знаете, где она располагается, вводите %TEMP% и поиск будет на всех локальных дисках и разделах.

Переменные среды передают информацию о вашем сеансе входа в систему на ваш компьютер. Например, когда приложению необходимо определить, где по умолчанию сохранять файл данных, оно обычно вызывает переменную среды HOMEPATH. Вероятно, вы никогда не устанавливали переменную HOMEPATH самостоятельно, и тем не менее она существует, потому что большинство переменных сред управляются вашей операционной системой. Мастер установки, такой как платформа Nullsoft Scriptable Install System (NSIS) с открытым исходным кодом, обновляет переменные среды при установке нового приложения. Иногда, когда вы устанавливаете что-то за пределами предполагаемого набора инструментов вашей операционной системы, вам, возможно, придется самостоятельно управлять переменной среды. Или вы можете добавить переменную среды в соответствии со своими предпочтениями.

 Список переменных сред windows 10

Приведенный глобальный список, в полной мере подойдет и для Windows 7 и для Windows 8.1, все проверено лично. Уверен, что данные знания, очень сильно вам помогут оптимизировать свою работу.

  • %ALLUSERSPROFILE% > данная переменная отправит вас в папку C:\ProgramData
  • %windir% > это папка C:\Windows
  • %APPDATA% > вы попадается в скрытую папку C:\Users\Имя_пользователя\AppData\Roaming
  • %CommonProgramFiles% > папка C:\Program Files\Common Files
  • %CommonProgramFiles(x86)% > перекинет вас в C:\Program Files (x86)\Common Files
  • %CommonProgramW6432% > перекинет вас C:\Program Files\Common Files
  • %COMPUTERNAME% > Имя_компьютера, используется скриптах
  • %ComSpec% > откроет командную строку Windows 10 C:\Windows\system32\cmd.exe
  • %HOMEDRIVE% > путь к диску C:
  • %HOMEPATH% > эта переменная среды windows перекинет вас в папку пользователя \Users\Имя_пользователя
  • %LOCALAPPDATA% > эта переменная среды windows перекинет вас в папку C:\Users\Имя_пользователя\AppData\Local
  • %LOGONSERVER% > Имя_компьютера
  • %NUMBER_OF_PROCESSORS% > Количество_процессоров
  • %OS% > Windows_NT, так же используется в скриптах
  • %Path% > C:\Windows\system32;C:\Windows;C:\Windows\System32Wbem;
  • %PATHEXT% .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
  • %PROCESSOR_ARCHITECTURE% > x86 или AMD64, архитектура Windows
  • %PROCESSOR_IDENTIFIER% > Intel64 Family 6 Model 37 Stepping 5, GenuineIntel
  • %PROCESSOR_LEVEL% > 6
  • %PROCESSOR_REVISION% > 2505 (пример)
  • %ProgramData% > папка C:\ProgramData
  • %ProgramFiles% > C:\Program Files
  • %ProgramFiles(x86)% > папка C:\Program Files (x86)
  • %ProgramW6432% > C:\Program Files
  • %PROMPT% > $P$G
  • %PSModulePath% > C:\Windows\system32\WindowsPowerShell\v1.0\Modules\ согласитесь очеь быстро
  • %PUBLIC% > C:\Users\Public
  • %SystemDrive% > диск C:
  • %SystemRoot% > C:\Windows
  • %TEMP% > C:\Users\Имя_пользователя\AppData\Local\Temp (по умолчанию)
  • %TMP% > C:\Users\Имя_пользователя\AppData\Local\Temp (по умолчанию)
  • %USERDOMAIN% > Имя_компьютера
  • %USERDOMAIN_ROAMINGPROFILE% > Имя_компьютера
  • %USERNAME% > Имя_пользователя
  • %USERPROFILE% > C:\Users\Имя_пользователя

Как вывести список всех переменных Windows

В Windows 10 и других версиях, можно вывести список всех переменных сред Windows, для этого откройте командную строку от имени администратора и введите команду SET.  В результате вы получите все переменные среды windows 10 по умолчанию для конкретной операционной системы.

переменные среды windows 10 по умолчанию

Для удобства вы можете экспортировать весь этот список в текстовый файл, для этого введите:

переменная среды path windows 10

Вот содержимое данного документы.

переменные среды windows 10-2

То же самое можно посмотреть и с помощью оболочки PowerShell, в которой нужно ввести:

Системные переменные powershell

Name Value
—- ——
ALLUSERSPROFILE C:\ProgramData
APPDATA C:\Users\Администратор\AppData\Roaming
CommonProgramFiles C:\Program Files\Common Files
CommonProgramFiles(x86) C:\Program Files (x86)\Common Files
CommonProgramW6432 C:\Program Files\Common Files
COMPUTERNAME DC01
ComSpec C:\Windows\system32\cmd.exe
FP_NO_HOST_CHECK NO
HOMEDRIVE C:
HOMEPATH \Users\Администратор
LOCALAPPDATA C:\Users\Администратор\AppData\Local
LOGONSERVER \\DC01
NUMBER_OF_PROCESSORS 4
OS Windows_NT
Path C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windo…
PATHEXT .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.CPL
PROCESSOR_ARCHITECTURE AMD64
PROCESSOR_IDENTIFIER Intel64 Family 6 Model 44 Stepping 2, GenuineIntel
PROCESSOR_LEVEL 6
PROCESSOR_REVISION 2c02
ProgramData C:\ProgramData
ProgramFiles C:\Program Files
ProgramFiles(x86) C:\Program Files (x86)
ProgramW6432 C:\Program Files
PSModulePath C:\Users\Администратор\Documents\WindowsPowerShell\ Modules;C:\Program Files\WindowsPo…
PUBLIC C:\Users\Public
SESSIONNAME Console
SystemDrive C:
SystemRoot C:\Windows
TEMP C:\Users\836D~1\AppData\Local\Temp\1
TMP C:\Users\836D~1\AppData\Local\Temp\1
USERDNSDOMAIN ROOT.PYATILISTNIK.ORG
USERDOMAIN ROOT
USERDOMAIN_ROAMINGPROFILE ROOT
USERNAME Администратор
USERPROFILE C:\Users\Администратор
windir C:\Windows

Еще одним методом посмотреть переменные операционной системы, выступает реестр Windows. Нажимаем WIN+R и вводим regedit. В открывшемся окне редактор реестра, перейдите в ветку:

Для просмотра переменных для компьютера

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment

Для просмотра переменных для пользователя

HKEY_CURRENT_USER\Environment

реестр, переменные среды windows 10-1

реестр, переменные среды windows 10-2

Создаем переменные среды windows 10 (Графический метод)

ПО мимо уже имеющихся переменных Windows 10, вы можете создать и новые, это очень легко и не запрещается. Что от вас требуется, вам необходимо зайти в свойства системы. Тут несколько методов, если мы говорим про Windows 10, то можно сделать через правый клик по кнопке «Пуск», выбрав пункт система.

Как создать переменные среды windows 10-1

Универсальный метод, это зайти в свойства моего компьютера или нажать сочетание клавиш WIN+Pause Breake.

Как создать переменные среды windows 10-2

С окне свойства системы, вы должны перейти в пункт «Дополнительные параметры системы»

изменение переменных среды windows 7-1

Далее пункт переменные среды.

изменение переменных среды windows 7-2

И перед вами два вида переменных сред Windows:

  • Временные переменные temp
  • Системные переменные

И те и другие можно легко изменить или создать.

изменение переменных среды windows 10-1

Для примера я создам новую системную переменную, назову ее SYSPREP и укажу путь до папки C:\Windows\System32\Sysprep

создать переменные среды windows 10-1

Проверяю, что все добавилось. И теперь вбив переменную %SYSPREP% у меня откроется C:\Windows\System32\Sysprep.

создать переменные среды windows 10-2

Как видите тут ничего сложного нет, благодаря вот таким вещам вы можете сильно упростить себе жизнь и экономить много времени.

Управление переменными средами Windows через PowerShell

Переменные среды в PowerShell — это особые типы переменных, которые предоставляют системе информацию о среде операционной системы. С помощью переменных среды вы можете просматривать и изменять переменные в реестре Windows, а также переменные, установленные для конкретного сеанса.

PowerShell есть функция, называемая провайдерами, которая создает один или несколько дисков, представляющих собой иерархические структуры, подобные файловой системе, которые позволяют пользователю управлять различными областями в Windows. Один из этих провайдеров предназначен для переменных среды под названием Environment.

В PowerShell переменные среды хранятся на Env:, доступном через поставщика среды PowerShell. Это не физический диск, а виртуальная файловая система.

Get-PSProvider

Как вы можете видеть выше, у поставщика среды есть диск с именем Env. Этот диск предоставляет все переменные среды в системе Windows. Например, командлет Get-ChildItem можно использовать для перечисления всех переменных пользовательской среды в вашей системе.

Get-ChildItem -Path Env:\ или вот так Get-ChildItem Env: | out-host -paging

Вывод переменных сред Get-ChildItem

Как установить локальную переменную среды Windows

Когда вы создаете обычную переменную, она считается локальной, то есть она не определена вне оболочки, которая ее создала, как только вы закроете текущее окно PowerShell, ваша переменная исчезнет — это  есть локальная переменная. Давайте создадим ее.

$env:SiteName = ‘pyatilistnik.org’

Создание локальной переменной среды Windows

Чтобы изменить значение нужной переменной, просто повторите команду с нужным значением.

Изменение локальной переменной среды Windows

Чтобы добавить к текущему значению, еще одно, то используйте оператор += и разделите значение точкой с запятой (;)

$env:SiteName += ‘;pyatilistnik.info’

Добавление второго значения в переменную среду Windows

Но не забываем, что это временная переменная для текущего сеанса.

Как сделать постоянные переменные среды Windows для пользователя

Чтобы установить переменную среды Windows, которая будет доступна для всех процессов, запускаемых вашей учетной записью, используйте следующее:

[System.Environment]::SetEnvironmentVariable(‘siteName’,’pyatilistnik .org’,[System.EnvironmentVariableTarget]::User)

Как сделать постоянные переменные среды Windows для компьютера

Чтобы создать переменную среды, видимую для каждого процесса, работающего на машине:

[System.Environment]::SetEnvironmentVariable(‘siteName’,’pyatilistnik .org’,[System.EnvironmentVariableTarget]::Machine)

Тут PowerShell использует класс [System.Environment] с методом SetEnvironmentVariable для переменной среды.

Или такой вариант:

[System.Environment]::SetEnvironmentVariable(‘siteName’,’pyatilistnik .info’)

Как удалить переменную среды Windows

Чтобы удалить нужную переменную используйте вот такую конструкцию, в моем примере я удалю переменную siteName.

[Environment]::SetEnvironmentVariable(«siteName», «», «Machine»)

Как выгрузить переменные среды Windows в файл через PowerShell

Если вы хотите сохранить список текущих переменных сред Windows в текстовом файле, то введите команду:

dir Env: | FL | FT -AutoSize >> c:\temp\1.txt

На этом у меня все, если у вас остались вопросы, то пишите постараемся вместе в них разобраться.

Создание и управление переменными средами Windows через командную строку

Не будим списывать со счетов старую, добрую командную строку, так как она умеет так же работать с переменными Windows. Запустите ее от имени администратора.

  • Создадим новую пользовательскую переменную MY-EMAIL, для этого пишем:

setx MY-EMAIL «microsoftexam@yandex.ru»

Не забываем перезапустить командную строку, иначе новую переменную вы не увидите.

Создание переменной среды Windows

  • Создадим новую системную переменную MY-EMAIL, для этого пишем:

setx /m MY-EMAIL «microsoftexam@yandex.ru»

  • Переименовывание пользовательской и системной переменной среды

Просто повторите те же команды, что и выше, но с уже нужными, новыми значениями

  • Добавляем еще одно значение в существующую пользовательскую переменную Windows, тут все добавляется через знак «;«.

setx MYWEBPC «microsoftexam@yandex.ru;microsoftexam2022@yandex.ru»

Добавление дополнительного значения у переменной среды Windows

  • Добавляем еще одно значение в существующую системную переменную Windows, тут все добавляется через знак «;«.

setx /m MY-EMAIL «microsoftexam@yandex.ru;microsoftexam2022@yandex.ru»

  • Удаляем значение у пользовательской переменной MY-EMAIL
  • Удаляем значение у системной переменной MY-EMAIL
  • Удаляем переменную MY-EMAIL

REG delete «HKCU\Environment» /F /V «MY-EMAIL»

REG delete «HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment» /F /V «MY-EMAIL»

I’m trying to write a batch file that can copy a file from my computer to all computers in a list. It needs to be copied to the AllUsers Desktop (I’ll use a domain admin account to run the batch file).

On my Win7 system, the %ALLUSERSPROFILE% returns C:\ProgramData. Is there a variable that returns the AllUsers Desktop path across every version of Windows? I have a mix of XP, Vista, and Win7.

  • windows
  • batch-file
  • environment-variables

asked May 18, 2011 at 0:14

Chaddeus's user avatar

ChaddeusChaddeus

13.2k29 gold badges104 silver badges162 bronze badges

4 Answers

It is %public% in Windows 7…

akjoshi's user avatar

akjoshi

15.4k13 gold badges104 silver badges122 bronze badges

answered Jan 30, 2013 at 16:45

Kyle P's user avatar

Kyle PKyle P

1511 silver badge3 bronze badges

1

  • Necro: %public%\Desktop, to be precise.

    Jun 23, 2017 at 22:26

%public% works for Windows 10 and Windows 2011 Server and up

%ALLUSERSPROFILE% is used in Windows XP

But, you can look to see what the available variables are by running «SET» from a command prompt

answered May 13, 2018 at 12:31

Robert Tozzi's user avatar

There’s no environment variable holding desktop path, but with this post you can see how to get it in batch (answers are for current user desktop, you’ll need to adapt them for all users desktop

Community's user avatar

answered May 18, 2011 at 0:32

CharlesB's user avatar

CharlesBCharlesB

86.7k28 gold badges195 silver badges219 bronze badges

in vista, 7, 8

%userprofile%\..\Default\Desktop

answered Jul 29, 2014 at 13:51

user3887965's user avatar

В Windows 10  переменные среды — это предварительно определенные имена, представляющие путь к определенным местам в операционной системе, например к диску, конкретному файлу или папке.

Переменные среды могут быть полезны в ряде сценариев, они особенно полезны, если вы являетесь специалистом по ИТ или чините чужой компьютер, поскольку вы можете быстро перемещаться в определенные места, даже не зная имени пользователя или полного пути к системной папке.

Например, вместо перехода по следующему пути C:\Users\<UserName>\AppData\Roaming можно открыть команду «Выполнить» (клавиша Windows + R), ввести %APPDATA% и нажать клавишу Enter  для доступа к тому же пути. Или вы можете использовать переменную %HOMEPATH% для доступа к местоположению папок по умолчанию для текущего пользователя — где операционная система хранит папки рабочего стола, документов, загрузок, OneDrive и т. Д.

HOMEPATH

Переменные среды по умолчанию в Windows 10

VARIABLE WINDOWS 10
%ALLUSERSPROFILE% C:\ProgramData
%APPDATA% C:\Users\{имя пользователя}\AppData\Roaming
%COMMONPROGRAMFILES% C:\Program Files\Common Files
%COMMONPROGRAMFILES(x86)% C:\Program Files (x86)\Common Files
%CommonProgramW6432% C:\Program Files\Common Files
%COMSPEC% C:\Windows\System32\cmd.exe
%HOMEDRIVE% C:\
%HOMEPATH% C:\Users\{имя пользователя}
%LOCALAPPDATA% C:\Users\{имя пользователя}\AppData\Local
%LOGONSERVER% \\{domain_logon_server}
%PATH% C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem
%PathExt% .com;.exe;.bat;.cmd;.vbs;.vbe;.js;.jse;.wsf;.wsh;.msc
%PROGRAMDATA% C:\ProgramData
%PROGRAMFILES% C:\Program Files
%ProgramW6432% C:\Program Files
%PROGRAMFILES(X86)% C:\Program Files (x86)
%PROMPT% $P$G
%SystemDrive% C:
%SystemRoot% C:\Windows
%TEMP% C:\Users\{имя пользователя}\AppData\Local\Temp
%TMP% C:\Users\{имя пользователя}\AppData\Local\Temp
%USERDOMAIN% Пользовательский домен, связанный с текущим пользователем.
%USERDOMAIN_ROAMINGPROFILE% Пользовательский домен, связанный с перемещаемым профилем.
%USERNAME% {имя пользователя}
%USERPROFILE% C:\Users\{имя пользователя}
%WINDIR% C:\Windows
%PUBLIC% C:\Users\Public
%PSModulePath% %SystemRoot%\system32\WindowsPowerShell\v1.0\Modules\
%OneDrive% C:\Users\{имя пользователя}\OneDrive
%DriverData% C:\Windows\System32\Drivers\DriverData
%CD% Выводит текущий путь к каталогу. (Командная строка.)
%CMDCMDLINE% Выводит командную строку, используемую для запуска текущего сеанса командной строки. (Командная строка.)
%CMDEXTVERSION% Выводит количество текущих расширений командного процессора. (Командная строка.
%COMPUTERNAME% Выводит имя системы.
%DATE% Выводит текущую дату. (Командная строка.)
%TIME% Время выхода. (Командная строка.)
%ERRORLEVEL% Выводит число определяющих статус выхода предыдущей команды. (Командная строка.)
%PROCESSOR_IDENTIFIER% Идентификатор процессора
%PROCESSOR_LEVEL% Outputs processor level.
%PROCESSOR_REVISION% Вывод ревизии процессора.
%NUMBER_OF_PROCESSORS% Выводит количество физических и виртуальных ядер.
%RANDOM% Выводит случайное число от 0 до 32767.
%OS% Windows_NT

Хотя вы можете использовать переменные среды для быстрого доступа к определенным местам в Windows 10, вы, как правило, будете использовать эти переменные при создании сценария или приложения.

APPDATA

Помните, что некоторые из упомянутых переменных не зависят от местоположения, в том числе  % COMPUTERNAME%, %PATHEXT%, %PROMPT%, %USERDOMAIN%, %USERNAME%.

Хотя это руководство ориентировано на Windows 10, важно отметить, что эти переменные также будут работать в Windows 11, Windows 8.x, Windows 7 и Windows Vista.

Переменные среды Windows 11 и Windows 10

Настройка переменных среды Windows может помочь сократить время, необходимое для набора команд в командной строке или, если вы часто пишете скрипты для собственных задач, сделать их более читаемыми. В большинстве случаев обычные пользователи добавляют записи в системную переменную среды PATH, хотя бывают и другие задачи.

В этой пошаговой инструкции базовая информация о том, как открыть переменные среды Windows 11 и Windows 10, создать или отредактировать их.

Что такое переменные среды

Переменные среды в Windows — записи о расположении системных папок, свойствах системы и другие, которые доступны для любой программы или скрипта.

Одна из наиболее часто используемых переменных среды — PATH, указывающая на папки, в которых выполняется поиск файлов, вызываемых в командной строке, терминале Windows, файле bat или из других источников. В качестве примера её назначения:

  • Если вы откроете командную строку (или диалоговое окно «Выполнить»), введёте regedit и нажмете Enter — вы сможете запустить редактор реестра, не указывая полный путь к файлу regedit.exe, поскольку путь C:Windows добавлен в переменную среды Path.
  • Если же тем же образом в командной строке написать имя программы, путь к которой не добавлен в Path (chrome.exe, adb.exe, pip и другие), вы получите сообщение «Не является внутренней или внешней командой, исполняемой программой или пакетным файлом».

Если предположить, что вы часто используете команды adb.exe (например, для установки приложений Android в Windows 11), pip install (для установки пакетов Python) или любые другие то для того, чтобы не писать каждый раз полный путь к этим файлам, имеет смысл добавить эти пути в переменные среды.

Также вы можете добавлять и иные переменные среды (не обязательно содержащие пути), а в дальнейшем получать и использовать их значения в сценариях BAT (командной строки) или PowerShell. Пример получения и отображения значения системной переменной PATH для обоих случаев:

Получить список всех переменных среды в командной строке и PowerShell соответственно можно следующими командами:

Редактирование переменных среды Windows 11/10

Прежде чем приступать, учтите: изменение системных переменных среды по умолчанию может привести к проблемам в работе системы, не удаляйте уже имеющиеся переменные среды. Возможно, имеет смысл создать точку восстановления системы, если вы не уверены в своих действиях.

  1. Чтобы открыть переменные среды Windows вы можете использовать поиск в панели задач (начните вводить «Переменных» и откройте пункт «Изменение системных переменных среды») или нажать клавиши Win+R на клавиатуре, ввести sysdm.cpl и нажать Enter. Открыть изменение переменных среды в Windows
  2. На вкладке «Дополнительно» нажмите кнопку «Переменные среды…» Переменные среды в параметрах системы Windows
  3. В разделе «Переменные среды пользователя» (если требуется изменение только для текущего пользователя) или «Системные переменные» выберите переменную, которую нужно изменить и нажмите «Изменить» (обычно требуется именно это), либо, если необходимо создать новую переменную — нажмите кнопку «Создать». В моем примере — добавляем свои пути в системную переменную Path (выбираем эту переменную и нажимаем «Изменить»). Создание и изменение переменных среды Windows
  4. Для добавления нового значения (пути) в системную переменную в следующем окне можно нажать кнопку «Создать», либо просто дважды кликнуть по первой пустой строке, затем — ввести нужный путь к папке, содержащей нужные нам исполняемые файлы. Изменение переменно PATH
  5. Также вы можете использовать кнопку «Изменить текст», в этом случае окно изменения системной переменной откроется в ином виде: имя переменной, а ниже — её значение. В случае указания путей значение будет представлять собой все пути, хранящиеся в переменной, разделенные знаком «точка с запятой». Изменение имени и значения системной переменной среды
  6. При создании новой переменной среды окно будет тем же, что и в 5-м шаге: необходимо будет указать имя системной переменной в верхнем поле, а её значение — в нижнем.

После создания или изменения переменной среды и сохранения сделанных настроек, переменная или обновленные значения сразу становятся доступны для текущего пользователя или в системе в целом в зависимости от того, какие именно переменные редактировались или создавались.

Изучаем переменные среды в Windows 10

Переменные среды в Windows 10

Получить информацию о существующих переменных можно в свойствах системы. Для этого кликаем по ярлыку Компьютера на рабочем столе правой кнопкой мыши и выбираем соответствующий пункт.

Переход к свойствам операционной системы с рабочего стола Windows 10

Переходим в «Дополнительные параметры».

Переход к дополнительным параметрам системы в ОС Windows 10

В открывшемся окне с вкладкой «Дополнительно» нажимаем кнопку, указанную на скриншоте ниже.

Переход к обзору переменных среды в ОС Windows 10

Здесь мы видим два блока. Первый содержит пользовательские переменные, а второй системные.

Раздел настройки переменных среды в Windows 10

Если требуется просмотреть весь перечень, запускаем «Командную строку» от имени администратора и выполняем команду (вводим и нажимаем ENTER).

Создание текстового документа со списком переменных среды из Командной строки Windows 10

На рабочем столе появится файл с названием «set.txt», в котором будут указаны все переменные окружения, имеющиеся в системе.

Текстовый документ со списком переменных среды Windows 10

Все их можно использовать в консоли или скриптах для запуска программ или поиска объектов, заключив имя в знаки процента. Например, в команде выше вместо пути

Примечание: регистр при написании переменных не важен. Path=path=PATH

Переменные PATH и PATHEXT

Если с обычными переменными все понятно (одна ссылка – одно значение), то эти две стоят особняком. При детальном рассмотрении видно, что они ссылаются сразу на несколько объектов. Давайте разберемся, как это работает.

Переменные среды PATH и PATHEXT в Windows 10

«PATH» позволяет запускать исполняемые файлы и скрипты, «лежащие» в определенных каталогах, без указания их точного местоположения. Например, если ввести в «Командную строку»

система осуществит поиск по папкам, указанным в значении переменной, найдет и запустит соответствующую программу. Этим можно воспользоваться в своих целях двумя способами:

    Поместить необходимый файл в одну из указанных директорий. Полный список можно получить, выделив переменную и нажав «Изменить».

Добавление значения переменной PATH в Windows 10

%SYSTEMROOT% определяет путь до папки «Windows» независимо от буквы диска.

Затем нажимаем ОК в окнах «Переменные среды» и «Свойства системы».

Для применения настроек, возможно, придется перезапустить «Проводник». Сделать это быстро можно так:

Открываем «Командную строку» и пишем команду

taskkill /F /IM explorer.exe

Завершение работы Проводника из Командной строки в Windows 10

Все папки и «Панель задач» исчезнут. Далее снова запускаем «Проводник».

Перезапуск Проводника из Командной строки в Windows 10

Еще один момент: если вы работали с «Командной строкой», ее также следует перезапустить, то есть консоль не будет «знать», что настройки изменились. Это же касается и фреймворков, в которых вы отлаживаете свой код. Также можно перезагрузить компьютер или выйти и снова зайти в систему.

Теперь все файлы, помещенные в «C:Script» можно будет открывать (запускать), введя только их название.

Запуск файла с помощью переменной среды PATH в Windows 10

«PATHEXT», в свою очередь, дает возможность не указывать даже расширение файла, если оно прописано в ее значениях.

Значения переменной среды PATHEXT в Windows 10

Принцип работы следующий: система перебирает расширения по очереди, пока не будет найден соответствующий объект, причем делает это в директориях, указанных в «PATH».

Запуск приложения с помощью переменной PATHEXT в Windows 10

Создание переменных среды

Создаются переменные просто:

    Нажимаем кнопку «Создать». Сделать это можно как в пользовательском разделе, так и в системном.

Для примера переделаем команду, которую мы использовали для получения списка (самая первая в статье). Теперь нам вместо

потребуется ввести только

Заключение

Использование переменных окружения позволяет значительно сэкономить время при написании скриптов или взаимодействии с системной консолью. Еще одним плюсом является оптимизация создаваемого кода. Имейте в виду, что созданные вами переменные отсутствуют на других компьютерах, и сценарии (скрипты, приложения) с их использованием работать не будут, поэтому перед тем, как передавать файлы другому пользователю, необходимо уведомить его об этом и предложить создать соответствующий элемент в своей системе.

ЗакрытьМы рады, что смогли помочь Вам в решении проблемы.
ЗакрытьОпишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.

Environment variables windows 10 где находится

переменные среды windows

Добрый день уважаемые читатели и гости блога, сегодня я с вами хочу обсудить вот такую тему, что такое переменные среды Windows, где их можно использовать, как в обычной практике пользователя, так и в практике системного администратора, я вам приведу несколько примеров. Как все это дело настраивается и изменяется под ваши нужны, на мой взгляд это фундаментальные знания, понимание которых вам лучше покажет принцип работы операционных систем семейства Windows.

Что такое переменные среды windows

Давайте разберемся в понятии, и так переменная окружения ( environment variable ) это специального рода ссылки уменьшенного размера, на определенные объекты операционной системы Windows, используемые разными программами для хранения информации и взаимодействия с ней. Можно провести аналогию с относительными ссылками на сайтах, где нет явного указания на протокол. Чаще всего это пути до конкретных директорий в ОС.

ИЛИ

Переменная среды — это динамический «объект» на компьютере, содержащий редактируемое значение, которое может использоваться одной или несколькими программами в Windows. Переменные среды помогают программам узнать, в какой каталог устанавливать файлы, где хранить временные файлы и где найти настройки профиля пользователя. Они помогают формировать среду, которую программы на вашем компьютере используют для запуска.

Где используют переменные среды Windows

Приведу несколько примеров:

  • В скриптах > когда нужно например каждому пользователю сделать какую-то настройку, для примера положить на рабочий стол новую папку с документами. Так как для каждого пользователя путь до рабочего стола свой, вида C:UserslackyDesktop, а можно обратиться и по относительному пути за счет переменной %HOMEPATH%, если вы в проводнике введете %HOMEPATH%Desktop, то попадете на рабочий стол текущего пользователя.

переменные среды windows 10

  • в групповой политике, для настройки пользовательских окружений, например перемещаемые профили.
  • Оптимизация кода > если в коде очень часто используются одни и те же пути к файлам или папкам, а так же ключам реестра, вы можете легко назначить короткую переменную для дальнейшего использования. Ниже я вам приведу сводный список по переменным средам windows 10 и предыдущих версий, а так же покажу как их создавать и менять.

Список переменных сред windows 10

Приведенный глобальный список, в полной мере подойдет и для Windows 7 и для Windows 8.1, все проверено лично. Уверен, что данные знания, очень сильно вам помогут оптимизировать свою работу.

  • %ALLUSERSPROFILE% > данная переменная отправит вас в папку C:ProgramData
  • %windir% > это папка C:Windows
  • %APPDATA% > вы попадается в скрытую папку C:UsersИмя_пользователяAppDataRoaming
  • %CommonProgramFiles% > папка C:Program FilesCommon Files
  • %CommonProgramFiles(x86)% > перекинет вас в C:Program Files (x86)Common Files
  • %CommonProgramW6432% > перекинет вас C:Program FilesCommon Files
  • %COMPUTERNAME% > Имя_компьютера, используется скриптах
  • %ComSpec% > откроет командную строку Windows 10 C:Windowssystem32cmd.exe
  • %HOMEDRIVE% > путь к диску C:
  • %HOMEPATH% > эта переменная среды windows перекинет вас в папку пользователя UsersИмя_пользователя
  • %LOCALAPPDATA% > эта переменная среды windows перекинет вас в папку C:UsersИмя_пользователяAppDataLocal
  • %LOGONSERVER% > Имя_компьютера
  • %NUMBER_OF_PROCESSORS% > Количество_процессоров
  • %OS% > Windows_NT, так же используется в скриптах
  • %Path% > C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;
  • %PATHEXT% .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
  • %PROCESSOR_ARCHITECTURE% > x86 или AMD64, архитектура Windows
  • %PROCESSOR_IDENTIFIER% > Intel64 Family 6 Model 37 Stepping 5, GenuineIntel
  • %PROCESSOR_LEVEL% > 6
  • %PROCESSOR_REVISION% > 2505 (пример)
  • %ProgramData% > папка C:ProgramData
  • %ProgramFiles% > C:Program Files
  • %ProgramFiles(x86)% > папка C:Program Files (x86)
  • %ProgramW6432% > C:Program Files
  • %PROMPT% > $P$G
  • %PSModulePath% > C:Windowssystem32WindowsPowerShellv1.0Modules согласитесь очеь быстро
  • %PUBLIC% > C:UsersPublic
  • %SystemDrive% > диск C:
  • %SystemRoot% > C:Windows
  • %TEMP% > C:UsersИмя_пользователяAppDataLocalTemp (по умолчанию)
  • %TMP% > C:UsersИмя_пользователяAppDataLocalTemp (по умолчанию)
  • %USERDOMAIN% > Имя_компьютера
  • %USERDOMAIN_ROAMINGPROFILE% > Имя_компьютера
  • %USERNAME% > Имя_пользователя
  • %USERPROFILE% > C:UsersИмя_пользователя

Как вывести список всех переменных Windows

В Windows 10 и других версиях, можно вывести список всех переменных сред Windows, для этого откройте командную строку от имени администратора и введите команду SET. В результате вы получите все переменные среды windows 10 по умолчанию для конкретной операционной системы.

переменные среды windows 10 по умолчанию

Для удобства вы можете экспортировать весь этот список в текстовый файл, для этого введите:

переменная среды path windows 10

Вот содержимое данного документы.

переменные среды windows 10-2

То же самое можно посмотреть и с помощью оболочки PowerShell, в которой нужно ввести:

Системные переменные powershell

Name Value
—- ——
ALLUSERSPROFILE C:ProgramData
APPDATA C:UsersАдминистраторAppDataRoaming
CommonProgramFiles C:Program FilesCommon Files
CommonProgramFiles(x86) C:Program Files (x86)Common Files
CommonProgramW6432 C:Program FilesCommon Files
COMPUTERNAME DC01
ComSpec C:Windowssystem32cmd.exe
FP_NO_HOST_CHECK NO
HOMEDRIVE C:
HOMEPATH UsersАдминистратор
LOCALAPPDATA C:UsersАдминистраторAppDataLocal
LOGONSERVER \DC01
NUMBER_OF_PROCESSORS 4
OS Windows_NT
Path C:Program Files (x86)Common FilesOracleJavajavapath;C:Windowssystem32;C:Windo.
PATHEXT .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.CPL
PROCESSOR_ARCHITECTURE AMD64
PROCESSOR_IDENTIFIER Intel64 Family 6 Model 44 Stepping 2, GenuineIntel
PROCESSOR_LEVEL 6
PROCESSOR_REVISION 2c02
ProgramData C:ProgramData
ProgramFiles C:Program Files
ProgramFiles(x86) C:Program Files (x86)
ProgramW6432 C:Program Files
PSModulePath C:UsersАдминистраторDocumentsWindowsPowerShellModules;C:Program FilesWindowsPo.
PUBLIC C:UsersPublic
SESSIONNAME Console
SystemDrive C:
SystemRoot C:Windows
TEMP C:Users836D

1AppDataLocalTemp1
TMP C:Users836D

1AppDataLocalTemp1
USERDNSDOMAIN ROOT.PYATILISTNIK.ORG
USERDOMAIN ROOT
USERDOMAIN_ROAMINGPROFILE ROOT
USERNAME Администратор
USERPROFILE C:UsersАдминистратор
windir C:Windows

Еще одним методом посмотреть переменные операционной системы, выступает реестр Windows. Нажимаем WIN+R и вводим regedit. В открывшемся окне редактор реестра, перейдите в ветку:

Для просмотра переменных для компьютера

Для просмотра переменных для пользователя

реестр, переменные среды windows 10-1

реестр, переменные среды windows 10-2

Создаем переменные среды windows 10 (Графический метод)

ПО мимо уже имеющихся переменных Windows 10, вы можете создать и новые, это очень легко и не запрещается. Что от вас требуется, вам необходимо зайти в свойства системы. Тут несколько методов, если мы говорим про Windows 10, то можно сделать через правый клик по кнопке «Пуск», выбрав пункт система.

Как создать переменные среды windows 10-1

Универсальный метод, это зайти в свойства моего компьютера или нажать сочетание клавиш WIN+Pause Breake.

Как создать переменные среды windows 10-2

С окне свойства системы, вы должны перейти в пункт «Дополнительные параметры системы»

изменение переменных среды windows 7-1

Далее пункт переменные среды.

изменение переменных среды windows 7-2

И перед вами два вида переменных сред Windows:

  • Временные переменные temp
  • Системные переменные

И те и другие можно легко изменить или создать.

изменение переменных среды windows 10-1

Для примера я создам новую системную переменную, назову ее SYSPREP и укажу путь до папки C:WindowsSystem32Sysprep

создать переменные среды windows 10-1

Проверяю, что все добавилось. И теперь вбив переменную %SYSPREP% у меня откроется C:WindowsSystem32Sysprep.

создать переменные среды windows 10-2

Как видите тут ничего сложного нет, благодаря вот таким вещам вы можете сильно упростить себе жизнь и экономить много времени.

Управление переменными средами Windows через PowerShell

Переменные среды в PowerShell — это особые типы переменных, которые предоставляют системе информацию о среде операционной системы. С помощью переменных среды вы можете просматривать и изменять переменные в реестре Windows, а также переменные, установленные для конкретного сеанса.

PowerShell есть функция, называемая провайдерами, которая создает один или несколько дисков, представляющих собой иерархические структуры, подобные файловой системе, которые позволяют пользователю управлять различными областями в Windows. Один из этих провайдеров предназначен для переменных среды под названием Environment .

В PowerShell переменные среды хранятся на Env:, доступном через поставщика среды PowerShell. Это не физический диск, а виртуальная файловая система.

Get-PSProvider

Как вы можете видеть выше, у поставщика среды есть диск с именем Env. Этот диск предоставляет все переменные среды в системе Windows. Например, командлет Get-ChildItem можно использовать для перечисления всех переменных пользовательской среды в вашей системе.

Вывод переменных сред Get-ChildItem

Как установить локальную переменную среды Windows

Когда вы создаете обычную переменную, она считается локальной, то есть она не определена вне оболочки, которая ее создала, как только вы закроете текущее окно PowerShell, ваша переменная исчезнет — это есть локальная переменная. Давайте создадим ее.

Создание локальной переменной среды Windows

Чтобы изменить значение нужной переменной, просто повторите команду с нужным значением.

Изменение локальной переменной среды Windows

Чтобы добавить к текущему значению, еще одно, то используйте оператор += и разделите значение точкой с запятой (;)

Добавление второго значения в переменную среду Windows

Но не забываем, что это временная переменная для текущего сеанса.

Как сделать постоянные переменные среды Windows для пользователя

Чтобы установить переменную среды Windows, которая будет доступна для всех процессов, запускаемых вашей учетной записью, используйте следующее:

Как сделать постоянные переменные среды Windows для компьютера

Чтобы создать переменную среды, видимую для каждого процесса, работающего на машине:

Тут PowerShell использует класс [System.Environment] с методом SetEnvironmentVariable для переменной среды.

Или такой вариант:

Как удалить переменную среды Windows

Чтобы удалить нужную переменную используйте вот такую конструкцию, в моем примере я удалю переменную siteName.

Как выгрузить переменные среды Windows в файл через PowerShell

Если вы хотите сохранить список текущих переменных сред Windows в текстовом файле, то введите команду:

На этом у меня все, если у вас остались вопросы, то пишите постараемся вместе в них разобраться.

Создание и управление переменными средами Windows через командную строку

Не будим списывать со счетов старую, добрую командную строку, так как она умеет так же работать с переменными Windows. Запустите ее от имени администратора.

  • Создадим новую пользовательскую переменную MY-EMAIL, для этого пишем:

Не забываем перезапустить командную строку, иначе новую переменную вы не увидите.

  • Переключение между двумя окнами windows
  • Перенести папку installer windows 10
  • Перенос windows 10 на usb ssd
  • Перенос windows 7 на другое железо отвязка от старого
  • Переменные среды windows командная строка