Como posso append permanentemente uma input na vairiável PATH do sistema, via linha de command?

O que eu preciso fazer:

  • Anexe uma pasta à vairiável de %PATH% environment no nível SYSTEM.
  • Tornair a mudança permanente.

Como eu preciso fazer isso:

  • Como você conviewte uma key privada SSH paira um .ppk na linha de command do Windows?
  • A compression em uma unidade TrueCrypt compromete a security?
  • Obter o model da placa de vídeo via linha de command no Windows
  • 0x00000e9 erro na boot Windows 10
  • Como posso liberair espaço na unidade de installation do Windows sem matair o Windows?
  • Como "trocair" novamente a memory do file de página paira a memory física no Windows ao mesmo tempo (como o swap-off do linux)
    • Usando o prompt de command ou outro método pelo qual todos os commands necessários podem ser gravados em um file .BAT .
    • Usando apenas ferramentas que estairão disponíveis em uma installation simples do Windows XP SP3, sem conectividade com a Internet.
    • Prefiro executair o script localmente, mas também tenho access remoto aos sistemas alvo. Tenho em mente, no entanto, que não posso presumir nenhum service não padrão (ie: Registro Remoto) estão habilitados nos sistemas.

    Sistemas em que o script precisa trabalhair:

    • Windows XP SP3
    • Windows Serview 2003 SP2
    • Windows 7 SP1
    • Windows Serview 2008 R2 SP1

    Estou bastante familiairizado com o command SET , mas também estou ciente de que geralmente irá replace a vairiável existente em vez de append a ela. Isso não é aceitável. Existe outra ferramenta (ou opção paira SET , da qual desconheço) que irá acrescentair à vairiável? Ou, eu preciso colocair um trabalho no script que inclui copy temporairiamente a vairiável existente paira outra vairiável ou file de text?

    Além disso, entendo que o SET não alterairá permanentemente a vairiável. Já vi mencionair o SETX , mas isso não pairece vir embutido no Windows XP SP3 (ou, pelo less, não pairece estair disponível no sistema no qual estou trabalhando). Existe outra maneira de tornair a mudança permanente, via edição de registro ou algo assim?

    Eu fiz alguns olhando ao redor e aprendi um bom pouco a pairtir daqui sobre a definição de variables ​​de ambiente no Windows. No entanto, ainda não findi uma pergunta duplicada exata que corresponda às minhas necessidades. Se houview um, me avise.

  • Como faço paira obter o layout do keyboard DVORAK no Windows?
  • Programa do Windows paira remoview bairra de título, quadro, etc. de uma window?
  • Como networkingfinir os mecanismos de busca do Chrome paira o padrão?
  • Alguns códigos alternativos do Unicode não funcionam
  • Inicie o MySQL a pairtir da linha de command sem perder o prompt
  • Desativair relatórios de erros no Windows 10 Home
  • 2 Solutions collect form web for “Como posso append permanentemente uma input na vairiável PATH do sistema, via linha de command?”

    O seguinte adiciona 'C: \ bin' ao seu path e, em seguida, salva o novo path no Registro:

     set path=%path%;C:\bin reg.exe ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d %path% /f 

    Eu só testei isso no XP SP3, mas também deviewia funcionair na viewsão mais recente.

    Eu acho que um novo user que faz logon antes da reboot da máquina pode não obter o novo path.

    Hairry está certo com o seu comentário sobre o% SystemRoot%, se você deseja manter isso, você deve primeiro puxair o valor antigo do path do registro:

     @echo OFF set KEY_NAME="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" set VALUE_NAME=Path FOR /F "usebackq skip=4 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO ( set ValueName=%%A set ValueValue=%%C ) if defined ValueName ( set newPath=%ValueValue%;C:\bin reg.exe ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d %newPath% /f set path=%path%;C:\bin ) else ( @echo %KEY_NAME%\%VALUE_NAME% not found. ) ) @echo OFF set KEY_NAME="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" set VALUE_NAME=Path FOR /F "usebackq skip=4 tokens=1-3" %%A IN (`REG QUERY %KEY_NAME% /v %VALUE_NAME% 2^>nul`) DO ( set ValueName=%%A set ValueValue=%%C ) if defined ValueName ( set newPath=%ValueValue%;C:\bin reg.exe ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d %newPath% /f set path=%path%;C:\bin ) else ( @echo %KEY_NAME%\%VALUE_NAME% not found. ) 
     set path=%path%;C:\bin reg.exe ADD "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /v Path /t REG_EXPAND_SZ /d ^%path^% /f 
    Nós somos o genio da rede de computadores, vamos consertar as questões de hardware e software do computador juntos.