Programming Field

Reg Copy - DOS/コマンドプロンプト コマンド一覧

[Windows NT系/XP 以降] レジストリのキーのコピーを行います。Regの操作の1つです。

このページではWindowsのレジストリを書き換えることができるコマンドを扱っています。レジストリにはWindowsの重要な設定も含まれているため、レジストリに対する操作は慎重に行ってください。レジストリの操作にあまり慣れていないときは事前のバックアップを強く推奨します。また、不用意にいろいろなデータの書き換えを行うとWindowsが正常に起動しなくなる原因となります。なお、このページにある内容を利用して生じた問題の責任は負いかねます。

構文

reg[.exe] copy <src-key> <dest-key> [/s] [/f] [/reg:[32|64]]

オプション一覧

<src-key>

コピー元のキー名を指定します。具体的な指定方法は「キー名の指定方法について」をご覧ください。

なお、キー名は完全パスで指定しますが、キーが存在しない場合はエラーとなります。

<dest-key>

コピー先のキー名を指定します。具体的な指定方法は「キー名の指定方法について」をご覧ください。

なお、キー名は完全パスで指定しますが、キーが存在しない場合は途中のサブキーも含めて作成されます。

/s <src-key> に含まれるすべてのサブキーおよびその中の値もまるごとコピーします。
/f コピー先に同じ名前の値が存在した場合プロンプトを表示せずに上書きします。/f を省略した場合、同名の値それぞれに対して上書き確認のプロンプトを表示します。
/reg:[32|64]

64ビット版と32ビット版(WOW64)の環境がある場合、「/reg:32」を指定すると32ビット版アプリケーションが使用するレジストリデータ(HKLMの場合は「HKLM\Software\WOW6432Node」以下など)、「/reg:64」を指定すると64ビット版アプリケーションが使用するレジストリデータを参照します。

なおこのオプションを省略した場合は、実行されるReg.exeが64ビット版であれば64ビット版、32ビット版(%SystemRoot%\SysWOW64 以下にあるもの)であれば32ビット版のレジストリを参照します。何らかのアプリケーションのレジストリデータを参照する場合は、そのアプリケーションの32ビット/64ビットが分かっているのであれば明示的にこのオプションを指定して曖昧さを回避することができます。

※ Reg.exeが32ビット版であっても「/reg:64」によって64ビット版のレジストリを参照することができます。
※ 64ビット版Reg.exeであれば、32ビット版のレジストリを参照する際に直接「HKLM\Software\WOW6432Node」以下などのキーを指定することも可能です。

解説

Regの「COPY」コマンドはレジストリ内のキーをコピー(複製)する際に用います。Reg Copyにおけるコピーの対象はキー内のすべての値(およびサブキー)となるため、特定の値のみをコピーすることはできません。

サンプル

reg copy "HKLM\Software\My Company" "\\AkoPC\HKLM\Software\My Company" /s

「HKEY_LOCAL_MACHINE\Software\My Company」キー内のすべてのサブキーと値をコンピューター「AkoPC」内の「HKEY_LOCAL_MACHINE\Software\My Company」以下にコピーします。(/f オプションがないため同名の値が存在した場合プロンプトが表示されます。)

※ 操作対象がリモートコンピューターの場合、そのコンピューターに対するルートキーは「HKEY_LOCAL_MACHINE」および「HKEY_USERS」のみ使用できます。