bash와 같은 임시 환경 변수 창 명령 프롬프트를 설정하는 방법은 무엇입니까?


0

Bash에서는 명령 줄에서 TEMPORARY 환경 변수를 만들 수 있습니다 . 예를 들어

DEBUG=foo somecommand

이것은 environmnet 변수를 설정 DEBUG하지만에 대해서만 설정됩니다 somecommand. 라인이 완료되면 DEBUG더 이상 설정되지 않습니다.

Windows 명령 프로세서에서 비슷한 작업을 수행 할 수 있습니까?

참고 : 사용 SET이 작동하지 않습니다. 이는 명령이 실행되는 것만이 아니라 현재 명령 프로세서 환경을 설정합니다.

다른 예제를 제공하기 위해 단일 환경 변수의 값을 인쇄하는 작은 node.js 프로그램이 있습니다.

// test.js
console.log(`${process.argv[2]}='${process.env[process.argv[2]]}'`);

bash에서 실행 해 봅시다

$ export FOO=abc
$ node test.js FOO
FOO='abc'

그런 다음 임시 설정으로 실행하겠습니다

$ FOO=def node test.js FOO
FOO='def'

FOO가 여전히 abc인지 확인

$ echo $FOO
abc

Windows 명령 프롬프트에서 동일한 작업을 수행하는 방법은 무엇입니까?

한 가지 방법은 다음과 같이 명령 프로세서를 다시 시작하는 것 같습니다

cmd /S /C "set "FOO=def" & node test.js FOO"

다른 방법이 있습니까?


"다른 방법이 있습니까? 그렇지 않습니까?" 나는 그것이 유일한 방법이라고 생각합니다. set foo=bar && echo %foo% && set foo= && echo %foo%작동하지 않습니다 :(
DavidPostill

답변:


-1

다음 set명령을 사용하십시오 .

C:\>set foo=bar

C:\>echo %foo%
bar

C:\>exit

cmd를 다시여십시오

C:\>echo %foo%
%foo%

C:\>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.