在Windows cmd中,如何提示用户输入并在另一个命令中使用结果?

我有一个Windows .bat文件,我想接受用户输入,然后将该输入的结果用作对其他命令的调用的一部分。


例如,我想接受用户的进程ID,然后针对该ID运行jstack,将jstack调用的结果放入文件中。但是,当我尝试此操作时,它不起作用。


这是我的示例bat文件内容:


@echo off

set /p id=Enter ID: 

echo %id%

jstack > jstack.txt

这就是jstack.txt中显示的内容:


输入ID:是否终止批处理作业(是/否)? 


慕沐林林
浏览 1151回答 3
3回答

largeQ

尝试这个:@echo offset /p id="Enter ID: "然后,您可以将其%id%用作另一个批处理文件的参数,例如jstack %id%。例如:set /P id=Enter id: jstack %id% > jstack.txt

慕森王

@echo offset /p input="Write something, it will be used in the command "echo""echo %input%pause如果我得到了您想要的东西,这会很好。您也可以在其他命令中使用%input%。@echo offecho Write something, it will be used in the command "echo"set /p input=""clsecho %input%pause 
打开App,查看更多内容
随时随地看视频慕课网APP