PowerShell에서 한 줄에 여러 명령을 어떻게 실행합니까?


268

cmd 프롬프트에서 다음과 같이 한 줄에 두 개의 명령을 실행할 수 있습니다.

ipconfig /release & ipconfig /renew

PowerShell에서이 명령을 실행하면 다음과 같은 결과가 나타납니다.

Ampersand not allowed. The `&` operator is reserved for future use

PowerShell에는 &cmd 프롬프트에서 동등한 기능을 빠르게 생성 할 수있는 연산자가 있습니까?

한 줄에 두 명령을 실행하는 모든 방법이 수행됩니다. 나는 대본을 만들 수 있다는 것을 알고 있지만, 팔목에서 조금 더 무언가를 찾고 있습니다.


5
Fun Note : Serial 포트와 Serialisation 사이에서이 질문을 검색하는 것은 사실상 불가능합니다.
David

살아남 으려면 ... 검색하기가 매우 쉽습니다. 관련 히트 세트를 얻는 것은 매우 어렵습니다. :) (훌륭한 질문에 +1)
Konrad Viltersten

답변:


384

세미콜론을 사용하여 PowerShell에서 명령을 연결하십시오.

ipconfig /release; ipconfig /renew

9
병렬 또는 순차적으로 실행됩니까?
Tarkus

19
cmd.exe의 & 연산자와 마찬가지로 순차적으로 실행됩니다.
Squeezy

43
그래도 큰 차이가 있습니다- ";" 첫 번째 오류가 발생하더라도 두 번째 명령을 실행합니다.
Ivan

10
위에서 언급했듯이 이것은 cmd.exe에서 &의 동작이기도합니다.
Squeezy

7
@Rafi 예, {Command-One -ea Stop} 캐치 {Command-Two}
Dave_J

30

MS-DOS 스타일 명령 인터프리터에서 연산자 와의 동작에는 중요한 차이점이 있지만 세미콜론은 이전 답변에서 설명한대로 명령 링크합니다 &.

명령 인터프리터에서 변수 대체는 행을 읽을 때 발생합니다. 이를 통해 중간없이 변수를 교체하는 등의 깔끔한 가능성을 얻을 수 있습니다.

set a=1
set b=2
set a=%b% & set b=%a%
echo %a%
echo %b%

결과는 다음과 같습니다.

2
1

내가 아는 한 PowerShell에서이 동작을 복제 할 수있는 방법이 없습니다. 어떤 사람들은 그것이 좋은 것이라고 주장 할 수도 있습니다.

실제로 PowerShell에는이를 수행 할 수있는 방법이 있습니다.

$b, $a = $a, $b

변수 값이 한 줄로 바뀌게됩니다.


그래도 단축키에 -command 옵션이있는 "Target"필드에서 작동하지 않는 것 같습니다.
clearlight
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.