Variável de ambiente

1

Estou usando o setx para definir uma variável de ambiente.

Meu comando é

setx -m PSR_NLC_FILE "%PROGRAMFILES(x86)%\Test Folder\"

Mas quando eu verificar no meu sistema está definido para

C:\Program Files (x86)\Test Folder"

O caminho não foi encontrado por causa da citação.

Quando eu uso este comando para outra variável de ambiente é definido como correto sem aspas.

setx -m PSR_NLC_FILE "%PROGRAMFILES(x86)%\Test Folder\File.lic"
C:\Program Files (x86)\Test Folder\File.lic

Alguém pode me explicar o que estou fazendo de errado?

    
por Sinista 02.02.2015 / 18:30

2 respostas

2

Veja aqui

Alguns comandos (por exemplo, REG e FINDSTR) usam o caractere de escape padrão de \ (usado por C, Python, SQL, bash e muitos outros idiomas). A \ escape pode causar problemas com caminhos de diretórios entre aspas que contêm uma barra invertida à direita, porque a aspas de fechamento "no final da linha terão escape".

No seu caso, outra barra invertida deve fazer o truque

setx -m PSR_NLC_FILE "%PROGRAMFILES(x86)%\Test Folder\"

    
por 02.02.2015 / 20:40
1

Não forneça a barra invertida no seu comando. Não é necessário que o nome do caminho seja interpretado corretamente.

O comando modificado ficaria assim:

setx -m PSR_NLC_FILE "%PROGRAMFILES(x86)%\Test Folder"
    
por 15.02.2015 / 22:45