PowerShell의 앰퍼샌드 및 이중 앰퍼샌드 교체 명령의 출력이 두 번째 명령

Windows의 기본 CMD 프로세서에서 &명령을 함께 연결하여 하나를 즉시 실행할 수 있습니다 . A &&는 첫 번째 명령이 오류없이 완료된 경우에만 두 번째 명령을 실행합니다.

이것은 |첫 번째 명령의 출력이 두 번째 명령 으로 전송 되지 않고 명령이 단순히 하나씩 실행되고 각 출력이 일반적인 위치로 전송 된다는 점 에서 파이핑 명령과 다릅니다 .

그러나 PowerShell 을 사용하려고 할 때 &또는 오류가 발생 &&합니다. PowerShell에서 비슷한 기능을 사용할 수 있습니까?이 기능이 더 이상 사용되지 않습니까?



답변

&PowerShell 의 연산자는 ;또는 세미콜론입니다.

&&PowerShell 의 연산자는 if명령문 으로 실행해야합니다 .

Command ; if($?) {Command}


답변

대략 같은 방식으로 사용할 수있는이 기능을 사용해보십시오.

function aa() {
    if($?) {
        $command = [string]::join(' ', $args[1..99])
        & $args[0] $command
    }
}

이제는 아직 완벽하지는 않지만 훨씬 간결한 &&로 대체 할 수 있습니다 ; aa.

cls && build

된다

cls; aa build


답변