O operador & no PowerShell é apenas o ; ou ponto e vírgula.
O operador && no PowerShell deve ser executado como uma instrução if .
Command ; if($?) {Command}
No processador CMD nativo do Windows, você pode usar & em comandos de string juntos para que um seja executado imediatamente após o outro. Um && executará o segundo comando apenas se o primeiro concluir sem erros.
Isto é diferente dos comandos de tubulação junto com | em que a saída do primeiro comando não é enviada para o segundo comando, os comandos são simplesmente executados um após o outro e a saída para cada é enviado para o seu lugar habitual.
No entanto, recebo um erro quando tento usar & ou && no PowerShell. Existem funções semelhantes disponíveis no PowerShell ou esse recurso está sendo suspenso?
Experimente esta função, que pode ser usada da mesma maneira:
function aa() {
if($?) {
$command = [string]::join(' ', $args[1..99])
& $args[0] $command
}
}
Agora, && pode ser substituído por ; aa , o que, embora ainda não seja perfeito, é muito mais sucinto.
cls && build
torna-se
cls; aa build
Tags powershell