No Windows cmd, como faço para solicitar a entrada do usuário e usar o resultado em outro comando?

Eu tenho um arquivo .bat do Windows que eu gostaria de aceitar a entrada do usuário e, em seguida, usar os resultados dessa entrada como parte da chamada para comandos adicionais.

Por exemplo, eu gostaria de aceitar um ID de processo do usuário e, em seguida, executar o jstack com esse ID, colocando os resultados da chamada do jstack em um arquivo. No entanto, quando tento isso, não funciona.

Aqui está o meu conteúdo do arquivo bat:

@echo off
set /p id=Enter ID: 
echo %id%
jstack > jstack.txt

e aqui está o que aparece no jstack.txt:

Enter ID: Terminate batch job (Y/N)? 

questionAnswers(12)

yourAnswerToTheQuestion