web-dev-qa-db-ja.com

Windowsで環境変数をエクスポートおよびインポートする方法

環境変数を別のマシンで同期させるのは難しいことがわかりました。あるコンピューターから設定をエクスポートし、別のコンピューターにインポートしたいだけです。

私はそれが可能であるべきだと思うが、それをする方法を知らない。誰も私を助けることができますか?ありがとう。

75
max_y

RegEditを使用して、次の2つのキーをエクスポートできます。

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

HKEY_CURRENT_USER\Environment

最初のセットはシステム/グローバル環境変数です。 2番目のセットはユーザーレベルの変数です。必要に応じて編集し、新しいマシンに.regファイルをインポートします。

105
jdigital

上記の推奨されるPATHだけでなく、コマンドプロンプトからSETコマンドを使用してすべての変数をエクスポートします。

C:\> SET >> allvariables.txt
73
Kushal Paudyal

ユーザー変数をエクスポートするには、コマンドプロンプトを開き、/ eでregeditを使用します

例:

regedit /e "%userprofile%\Desktop\my_user_env_variables.reg" "HKEY_CURRENT_USER\Environment"
15
vincsilver

@vincsilverと@jdigitalの回答をいくつか修正して組み合わせ、

  1. 書き出す .reg現在のディレクトリへ
  2. 日付マークを追加

コード:

set TODAY=%DATE:~0,4%-%DATE:~5,2%-%DATE:~8,2%

regedit /e "%CD%\user_env_variables[%TODAY%].reg" "HKEY_CURRENT_USER\Environment"
regedit /e "%CD%\global_env_variables[%TODAY%].reg" "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"

出力は次のようになります。

global_env_variables[2017-02-14].reg
user_env_variables[2017-02-14].reg
9
Mithril

コマンドラインまたはレジストリで環境変数にアクセスできます。

コマンドライン

特定の環境変数が必要な場合は、その名前(PATHなど)を入力し、その後に「>」と書き込むファイル名を入力します。以下は、PATH環境変数をpath.txtという名前のファイルにダンプします。

C:\> PATH > path.txt

レジストリメソッド

Windowsレジストリはすべての環境変数を保持しますが、どのセットが必要かによって異なります。レジストリのインポート/エクスポートコマンドを使用して、他のPCにシフトできます。

システム変数の場合:

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

ユーザー変数の場合:

HKEY_CURRENT_USER\Environment
5
Gavin Bunney

これを行うための私のお気に入りの方法は、ユーザー変数とシステム変数の両方を単一のバックアップファイルに結合するバッチスクリプトとして書き出し、environment-backup.batファイルを作成して挿入することです。

@echo off
:: RegEdit can only export into a single file at a time, so create two temporary files.
regedit /e "%CD%\environment-backup1.reg" "HKEY_CURRENT_USER\Environment"
regedit /e "%CD%\environment-backup2.reg" "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"

:: Concatenate into a single file and remove temporary files.
type "%CD%\environment-backup1.reg" "%CD%\environment-backup2.reg" > environment-backup.reg
del "%CD%\environment-backup1.reg"
del "%CD%\environment-backup2.reg"

これにより、既存の環境変数を再インポートするために使用できるenvironment-backup.regが作成されます。これは追加とオーバーライド新しい変数ですが、ない既存の変数を削除します:)

0
chunk_split