システムおよびユーザー環境変数(System and User Environment Variables)は、日常のWindowsOSユーザーにとって常に複雑な議論のトピックでした。彼らは何をしますか?インターネット上のチュートリアルでは、PATH変数を追加すると言われていますが、それは何ですか?これらの変数はどこにありますか?これらの質問はすべて、この投稿でまもなく回答されます。システム(System)変数とユーザー環境変数(User Environment Variables)とは何か、およびそれらをどのように利用できるかについて、概要を説明するように努めました。
この投稿では、環境変数(Environment Variables)、システム(System)およびユーザー環境変数(User Environment Variables)、およびそれらを追加および変更する方法について説明します。次に、動的システム変数(Dynamic System Variables)に移動し、コマンドプロンプトでそれらの使用方法を確認します。
WindowsOSの環境変数(Variable)とは
環境変数は、「(Environment Variable)環境(Environment)」と「変数(Variable)」という2つの別個の単語で構成されます。最初に「変数」について説明しましょう。これは、エンティティが値を格納し、コンピュータごとに異なる可能性があることを意味します。Windowsは、アプリケーションが操作を実行および実行するための「環境」を提供します。これが最初の言葉になります。(Environment)両方を組み合わせると、環境(Environment)変数は、環境によって提供される値を格納する動的オブジェクトです。現在、環境は、他のプログラムがシステムに関する重要な情報を取得するのに役立つ値を提供します。Windowsがあるディレクトリに対応する「windir」と呼ばれる環境変数があるようにがインストールされています。これが実際に動作していることを確認するには、エクスプローラウィンドウを開き、アドレスバーに「 %windir%Windowsインストールフォルダが開きます。
同様に、他のプログラムやスクリプトで「windir」変数を使用してWindowsディレクトリを参照できます。(Windows)アクセスできる変数は他にも多数あります。「TEMP」または「TMP」は、すべての一時ファイルが保存されているディレクトリを指す変数です。最も人気のある「Path」変数は、実行可能ファイルを含むディレクトリを指す変数です。これにより、他のディレクトリのコマンドプロンプト(Command Prompt)からプログラムを実行できます。パス(Path)については、この投稿の後半で説明します。これらの変数はすべて、何かを開発しているときやシェルを頻繁に使用しているときに役立ちます。
システム(System)およびユーザー環境変数(User Environment Variables)とは
レジストリ(Registry)がWindowsでどのように機能するかと非常によく似ており、システム(System)変数とユーザー環境変数(User Environment Variables)があります。システム変数はシステム全体で受け入れられ、ユーザーごとに異なりません。一方(Whereas)、ユーザー環境(User Environments)はユーザーごとに異なる方法で構成されます。他のユーザーが変数の影響を受けないように、ユーザーの下に変数を追加できます。
トピックについて詳しく説明しているので、参考までに。システム変数は、(System Variables)ユーザー変数(User Variables)の前に評価されます。したがって、システム変数と同じ名前のユーザー変数がいくつかある場合は、ユーザー変数が考慮されます。Path変数は別の方法で生成されます。有効なパス(Path)は、システムパス(System Path)変数に追加されたユーザーパス(User Path)変数になります。したがって、エントリの順序は、システムエントリの後にユーザーエントリが続きます。
環境変数を追加および変更する方法
深く進む前に、小さな警告が表示されます。システムの復元ポイントを作成し、システムに構成されている既存の設定を改ざんしないようにしてください。あなたが自分の行動について非常に確信が持てない限りまで。「環境変数」ウィンドウを開くには、次の手順に従います。
- 「このPC」アイコンを右クリックし、「プロパティ」を選択します。
- このウィンドウで、左側から[システムの詳細設定]を選択します。
- (Hit)「環境変数」という最後のボタンを押して、目的のウィンドウを開きます。
これを開くと、ユーザー(User)変数とシステム(System)変数を別々に表示できるようになります。変数名は最初の列にあり、その値は2番目の列にあります。表の下にある対応するボタンを使用すると、これらの変数を「追加」、「編集」、および「削除」できます。
Path変数の使用
パス(Path)は最もよく使用される環境変数です。前述したように、実行可能ファイルを含むディレクトリを指します。Path変数を正しく設定すると、システム内のどこからでもこれらの実行可能ファイルを使用できるようになります。例を挙げてこれを理解してみましょう。環境変数ウィンドウを開き、システム変数で「パス(Path)」を探します。
(Click)現在、他のコントロールをいじらずに、[編集]をクリックしてから[新規]をクリックします。(New)次に、[参照]をクリックして、目的の実行可能ファイルがあるフォルダーを選択します。[(Click) OK]をクリックして、すべてを保存します。パスに「VisualStudioCode」実行可能ファイルを追加しました。
ここでアプリケーションを実行するには、コマンドプロンプト(Command Prompt)を開き、フォルダーにあった実行可能ファイルの名前を入力します。プログラムがサポートしている場合は、追加の引数を指定できます。プログラムは、コマンドを実行したディレクトリに実際にいなくても、コマンドプロンプトから実行されます。これがPath変数(Path variable)の美しさです。
すべての環境変数のリスト
コマンドプロンプトを開き、「SET」と入力してEnterキー(Enter)を押します。変数の全リストとその現在の値が表示され、それを参照してコンピューターに変更を加えることができます。
動的環境変数
従来の変数とは異なり、動的環境変数はシステムではなくCMDによって提供されます。これらの変数の値を変更することはできず、照会されるたびにさまざまな離散値に展開されます。通常、これらの変数はバッチ処理に使用され、環境には保存されません。'SET'コマンドでさえ、これらの変数を明らかにしません。動的環境変数の一部を以下に示します。
読む(Read):コンテキストメニューに環境変数を追加する方法(How to add Environment Variables to Context Menu)。
Windows 11/10の環境変数のリスト
%APPDATA% – C:Users <username> AppDataRoaming
%ALLUSERSPROFILE% – C:ProgramData
%CD% –このコマンドを入力すると、作業中の現在のディレクトリが表示されます。
%COMMONPROGRAMFILES% – C:プログラムファイル共通ファイル
%COMMONPROGRAMFILES(x86)% – C:プログラムファイル(x86)共通ファイル
%COMMONPRGRAMW6432% – C:プログラムファイル共通ファイル
%CMDEXTVERSION% –この変数は、コマンドライン拡張のバージョンに展開されます。
%COMSPEC% – C:WindowsSystem32cmd.exe
%DATE%:–この変数は、日付形式の設定に従って現在の日付を提供します。
%ERRORLEVEL% –最後に実行したコマンドによって設定されたエラーレベルを決定します。
%HOMEDRIVE% – C:
%HOMEPATH% -C:Users<ユーザー名>
%LOCALAPPDATA% – C:Users <username> AppDataLocal
%LOGONSERVER% – \ <domain_logon_server>
%PATH% – C:Windowssystem32; C:Windows; C:WindowsSystem32Wbem
%PATHEXT% – .com ; .exe ; .bat ; .cmd ; .vbs ; .vbe ; .js; .jse ; .wsf ; .wsh ; .msc
%PROGRAMDATA% – C:ProgramData
%PROGRAMFILES% – C:プログラムファイル
%PROGRAMW6432% – C:プログラムファイル
%PROGRAMFILES(X86)% – C:プログラムファイル(x86)
%PROMPT% – $ P $ G
%SYSTEMDRIVE% – C:
%SYSTEMROOT% – C:Windows
%TIME% –同様に、時間形式の設定に従って現在の時刻を表示します。
%TMP% – C:Users <username> AppDataLocalTemp
%TEMP% – C:Users <username> AppDataLocalTemp
%USERNAME% –<ユーザー名>
%USERPROFILE% – C:Users<ユーザー名>
%USERDOMAIN%–(Userdomain)現在のユーザーに関連付けられているユーザードメイン。
%USERDOMAIN_ROAMINGPROFILE%–(Userdomain)移動プロファイルに関連付けられたユーザードメイン。
%WINDIR% – C:Windows
%PUBLIC% – C:UsersPublic
%PSMODULEPATH% –%SystemRoot%system32WindowsPowerShell 1.0Modules
%ONEDRIVE% – C:Users <username> OneDrive
%DRVERDATA% – C:WindowsSystem32DriversDriverData
%CMDCMDLINE% –現在のコマンドプロンプト(Command Prompt)セッションを起動するために使用されるコマンドラインを出力します。(Outputs)(コマンドプロンプト(Command Prompt)。)
%COMPUTERNAME% -システム名を出力します。
%PROCESSOR_REVISION% –プロセッサリビジョンを出力します。
%PROCESSOR_IDENTIFIER% –プロセッサ識別子を出力します。
%PROCESSOR_LEVEL% –プロセッサレベルを出力します。
%RANDOM% –この変数は、0から32767までの乱数を出力します
%NUMBER_OF_PROCESSORS% –物理コアと仮想コアの数を出力します。
%OS% – Windows_NT
これは、 Windowsの(Windows)システム(System)およびユーザー環境変数(User Environment Variables)に関するものでした。Windowsにはさらに多くの変数が付属しています。「SET」コマンドを使用してそれらを確認することを忘れないでください。
ヒント(TIP):Rapid Environment Editorは、 (Rapid Environment Editor)Windows用の強力な環境変数エディター(Variables Editor)です。
System & User Environment Variables in Windows 11/10 explained
System and User Environment Variables has always been a complex topic of discussion for day-to-day Windows OS users. What do they do? A tutorial on the internet said to add a PATH variable, but what is it? Where do I find these variables? All of these questions will be shortly answered in this post. We’ve tried to give you a high-level overview of what System and User Environment Variables are and how you can utilize them.
In this post, we will discuss Environment Variables, System and User Environment Variables and how to add and modify them. Then we will move on to Dynamic System Variables and see how to use them in the command prompt.
What is an Environment Variable In Windows OS
Environment Variable is formed up by two separate words, ‘Environment’ and ‘Variable’. Let’s discuss ‘variable’ first. It means that the entity can store a value and vary from computer to computer. Windows provide an ‘Environment’ for applications to execute and perform operations and that is what makes the first word. Combining both, Environment Variables are those dynamic objects that store the values provided by the environment. Now environment provides values that help other programs in obtaining some crucial information about the system. Like there is an environment variable called ‘windir’ that corresponds to the directory where Windows is installed. To see this in action, open up an explorer window and type in ‘%windir%’ in the address bar. The Windows installation folder will open up.
Very similarly, you can make reference to the Windows directory using ‘windir’ variable in other programs and scripts. There are numerous other variables that can be accessed, ‘TEMP’ or ‘TMP’ is the variable that points to the directory where all temporary files are stored. The most popular, ‘Path’ variable is the one that points to the directories containing executable files. So that you can run a program from the Command Prompt in any other directory. We’ve explained Path later on in this post. All these variables come in handy when you are developing something or using the shell a lot.
What are System & User Environment Variables
Very similar to how the Registry works on Windows, we have System and User Environment Variables. The system variables are system-wide accepted and do not vary from user to user. Whereas, User Environments are configured differently from user to user. You can add your variables under the user so that other users are not affected by them.
Just for your information since we are discussing the topic in depth. System Variables are evaluated before User Variables. So if there are some user variables with the same name as system variables then user variables will be considered. The Path variable is generated in a different way. The effective Path will be the User Path variable appended to the System Path variable. So the order of entries will be system entries followed by user entries.
How to add & modify Environment Variables
A small warning before we go deeper. Create a system restore point, and try not to tamper with the existing settings configured for your system. Until unless you are very sure about your actions. To open the ‘Environment Variables’ Window, follow these steps:
- Right-click ‘This PC’ icon and select ‘Properties’.
- Now in this window select ‘Advanced System Settings’ from the left part.
- Hit the last button saying ‘Environment Variables’ to open our destined window.
Once you’ve opened this up, you will be able to view User and System variables separately. The variable name is in the first column and its value in the second. The corresponding buttons below the table let you ‘Add’, ‘Edit’ and ‘Delete’ these variables.
Using the Path variable
Path is the most used environment variable. As I mentioned, it points to directories that contain executable files. Once you’ve correctly setup your Path variable, you can use these executables from anywhere in the system. Let’s try to understand this with an example. Open up the environment variables window and look for ‘Path’ in system variables.
Click on ‘Edit’ and then click on ‘New’ without playing around with other controls right now. Now click browse and select a folder that has your desired executable file. Click ‘Ok’ and save everything. I added ‘Visual Studio Code’ executable to the path.
Now to run your application, open up Command Prompt and type in the name of the executable file that was in the folder. You can provide additional arguments if the program supports it. The program will run from the command prompt without actually being in the directory from where you executed the command. That is the beauty of the Path variable.
List of all Environment Variables
Open command prompt and type ‘SET’ and hit Enter. The entire list of variables with their current values will be displayed and you can refer to it for making changes to your computer.
Dynamic Environment Variables
Unlike, conventional variables, dynamic environment variables are provided by the CMD and not by the system. You cannot change the values of these variables and they expand to various discrete values whenever queried. We usually use these variables for batch processing and these are not stored in the environment. Even the ‘SET’ command will not reveal these variables. Some of the dynamic environment variables are listed below.
Read: How to add Environment Variables to Context Menu.
List of environment variables in Windows 11/10
%APPDATA% – C:\Users\<username>\AppData\Roaming
%ALLUSERSPROFILE% – C:\ProgramData
%CD% – Typing in this command will give you the current directory you are working in.
%COMMONPROGRAMFILES% – C:\Program Files\Common Files
%COMMONPROGRAMFILES(x86)% – C:\Program Files (x86)\Common Files
%COMMONPRGRAMW6432% – C:\Program Files\Common Files
%CMDEXTVERSION% – This variable expands to the version of the command-line extensions.
%COMSPEC% – C:\Windows\System32\cmd.exe
%DATE%: – This variable will give you the current date according to date format preferences.
%ERRORLEVEL% – Determines the error level set by last executing command.
%HOMEDRIVE% – C:\
%HOMEPATH% -C:\Users\<username>
%LOCALAPPDATA% – C:\Users\<username>\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
%TIME% – Similarly, it gives you current time according to the time format preferences.
%TMP% – C:\Users\<username>\AppData\Local\Temp
%TEMP% – C:\Users\<username>\AppData\Local\Temp
%USERNAME% – <username>
%USERPROFILE% – C:\Users\<username>
%USERDOMAIN% – Userdomain associated with current user.
%USERDOMAIN_ROAMINGPROFILE% – Userdomain associated with roaming profile.
%WINDIR% – C:\Windows
%PUBLIC% – C:\Users\Public
%PSMODULEPATH% – %SystemRoot%\system32\WindowsPowerShell\v1.0\Modules\
%ONEDRIVE% – C:\Users\<username>\OneDrive
%DRVERDATA% – C:\Windows\System32\Drivers\DriverData
%CMDCMDLINE% – Outputs command line used to launch the current Command Prompt session. (Command Prompt.)
%COMPUTERNAME% -Outputs the system name.
%PROCESSOR_REVISION% – Outputs processor revision.
%PROCESSOR_IDENTIFIER% – Outputs processor identifier.
%PROCESSOR_LEVEL% – Outputs processor level.
%RANDOM% – This variable prints a random number from 0 through 32767
%NUMBER_OF_PROCESSORS% – Outputs the number of physical and virtual cores.
%OS% – Windows_NT
This was pretty much about System and User Environment Variables on Windows. Windows does come with a lot more variables – don’t forget to check them using the ‘SET’ command.
TIP: Rapid Environment Editor is a powerful Environment Variables Editor for Windows.