Encontrei uma solução graças à seguinte pergunta: link
setlocal enabledelayedexpansion
ssh -i private_linux_key user@machine "exit 1" || echo !errorlevel!
Ou ainda mais simples
ssh -i private_linux_key user@machine "exit 1"
exit %ERRORLEVEL%
O último é possível somente quando não há mais linhas de script adicionais após exit
, é claro
Para ler mais sobre as diferenças entre enabledelayedexpansion
e shells do Windows / Unix: link