How do I export HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe with regedit from cmd.exe?

1

I am trying to export the registry key HKEY_CURRENT_USER\Console\%SystemRoot%_system32_cmd.exe but am unable to do so, probably because of the percent signs.

I tried to escape the %-sign with a caret or another %-sign, but this didn't help me:

regedit /e c:\temp\cmd.reg "HKEY_CURRENT_USER\Console\%%SystemRoot%%_system32_cmd.exe"

and

regedit /e c:\temp\cmd.reg "HKEY_CURRENT_USER\Console\^%SystemRoot^%_system32_cmd.exe"

So, is there a way to do what I want.

Edit as per Ярослав Рахматуллин's comment: the key is the exact string, with the percent signs. So I don't want %SystemRoot% expanded, but passed to regedit as is.

René Nyffenegger

Posted 2012-10-13T07:18:38.203

Reputation: 1 862

Do you want the variable to expand? As in do you want the key located at what would be the location in the tree if the proper value for the system root was inserted instead of variable? – Ярослав Рахматуллин – 2012-10-13T08:13:49.447

No, the variable should not be expanded. – René Nyffenegger – 2012-10-13T08:53:59.507

Answers

0

1) Using a percent sign (%) in a batch file requires that two percent signs (%%) be specified.

This is working in batch files.

regedit /e c:\temp\123.reg "HKEY_CURRENT_USER\Console\%%SystemRoot%%_system32_cmd.exe"

2) This trick is working in "plain" command line of cmd.exe

set sr=SystemRoot
regedit /e c:\temp\123.reg "HKEY_CURRENT_USER\Console\%%sr%%_system32_cmd.exe"

Maximus

Posted 2012-10-13T07:18:38.203

Reputation: 19 395

It would be great to explain why this is working. A little context always helps! – slhck – 2012-10-13T09:14:04.620

Sorry, it's more easy :) – Maximus – 2012-10-13T09:56:09.320

It's interesting that this works in batch files. But I was actually after a way to run (or type) this in cmd.exe itself. And it doesn't work if not in a batch file. – René Nyffenegger – 2012-10-13T10:18:07.747

Trick for command line – Maximus – 2012-10-13T10:56:33.457

Do yourself a favor and install the PowerShell. CMD.exe is really not suitable, ...for anything. – Ярослав Рахматуллин – 2012-10-13T11:26:19.603