A maneira mais fácil de atualizar um valor do Registro?

4

Enquanto uso o Linux, eu me acostumei com os one-liners quando pesquiso on-line para consertar padrões incômodos. Eu sei que esses forros poderiam ser muito perigosos então eu sempre me certifico de saber o que eles estão fazendo antes de executá-los.

Ao mesmo tempo, eu odeio ter que atualizar as chaves de registro do Windows porque eu preciso abrir o regedit e navegar A Árvore .

Existe uma maneira fácil de editar um valor de registro específico?

Algo como:

regupdate path type newvalue
    
por Annan 30.11.2012 / 00:23

4 respostas

1

No momento em que escrevo isso, a resposta aceita por David Marshall responde à pergunta, mas não fornece nenhum detalhe além do próprio link. No interesse de escrever uma resposta que seja facilmente legível e invulnerável a uma possível perda de links, decidi escrever minha própria resposta à pergunta.

Como faço para atualizar o Registro do Windows usando a linha de comando?

O comando reg , disponibilizado em desde o Windows Server 2000, é usado exatamente para esse fim, e a sintaxe é bastante simples de usar.

Para adicionar uma chave

Execute o seguinte em uma janela de linha de comando:

reg add HKLM\Software\Classes\MyKey

... onde HKLM \ Software \ Classes \ MyKey é a chave de registro que você deseja criar.

Para adicionar valores e dados do registro junto com as chaves, os parâmetros são necessários. O parâmetro /v especifica o nome do valor a ser adicionado, o parâmetro /t especifica o valor tipo e o parâmetro /d especifica o dados para estar contido dentro do valor.

Para adicionar a chave HKLM\Software\Classes\MyKey com um valor DWORD chamado LegacyDisable que contém dados de 000 :

reg add HKLM\Software\Classes\MyKey /v LegacyDisable /t reg_dword /d 000

Para excluir uma chave

reg delete HKLM\Software\Classes\MyKey

Os parâmetros incluem /v , para excluir um determinado valor dentro de uma chave, em vez da própria chave; /ve , para excluir uma chave apenas se ela não contiver valores; e /f , que substitui o comportamento padrão do comando de aguardar a confirmação do usuário e força a exclusão.

Para excluir um valor em uma chave:

reg delete HKLM\Software\Classes\MyKey /v LegacyDisable

Para comparar duas chaves

O reg do comando compare também permite comparar duas chaves de registro, listando as diferenças entre os dois por padrão:

reg compare HKCR\.doc HKCR\.docx

Para alterar o comportamento padrão das diferenças de listagem e listar as diferenças e semelhanças entre duas chaves diferentes, use o parâmetro /oa .

  • Ao adicionar ou modificar uma chave de registro que contenha espaços, coloque a chave entre aspas para evitar um erro de sintaxe incorreto.

  • Ao se referir a qualquer uma das seções do Registro em um caminho de chave - HKEY_LOCAL_MACHINE , HKEY_CLASSES_ROOT , HKEY_CURRENT_USER , HKEY_USERS e HKEY_CURRENT_CONFIG - o comando reg permite fazer referência a eles usando suas versões abreviadas - HKLM , HKCR , HKCU , HKU e HKCC , respectivamente - conforme demonstrado nos exemplos acima.

  • Quando um comando está prestes a sobrescrever um valor existente no momento, o CMD usa como padrão a solicitação de confirmação. Para ignorar essa confirmação, use o parâmetro /f para forçar a sobregravação.

  • A documentação vinculada da Microsoft para o comando reg não lista nenhum sistema operacional suportado após o Windows 7, portanto, não está claro se esse comando é executado com êxito no Windows 8 ou 10. Entrada de qualquer pessoa com esses sistemas operacionais seriam apreciados aqui.

por 05.03.2017 / 23:26
5

O comando Reg faz o que você precisa.

    
por 30.11.2012 / 00:30
3

Você pode criar um arquivo .REG para atualizá-lo para você.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main]
"RunOnceHasShown"=dword:00000001
"RunOnceComplete"=dword:00000001

Copie o código em uma nova janela do Bloco de Notas e salve o arquivo com .REG extention. Quando você executá-lo (por exemplo, START /w file.reg , ele solicitará que você mescle o conteúdo

    
por 30.11.2012 / 00:26
2

Se você estiver aberto a Powershell , poderá usar o cmdlet Set-ItemProperty . Aqui está um artigo sobre o assunto.

    
por 30.11.2012 / 00:45