如何从windows CMD提示符关闭stdin ?



我知道可以在Linux命令行中使用以下逻辑执行命令时关闭stdin:

0<&- <command>

这模拟了在无人值守的情况下运行应用程序,或者在像Jenkins/Gitlab这样的CI/CD系统中关闭了stdin。

我为什么要关心?因为我们有一个程序有一个"按任意键继续…"提示。

当运行在Jenkins/Gitlab或任何没有stdin打开,它只是移动.....

我该如何做到这一点,这是可能做到这一点从Windows CMD窗口命令行吗?

我已经尝试过0<&-,结果是消息

0<& was unexpected at this time.

Google搜索给出了很多stdin的结果,但是所有的文档都是重定向的。我没有找到任何可以关闭的窗口

你可以试试

command <nul

基本上意味着"从NUL设备获取任何输入"(作为"crlf"的无限来源)。只要command从STDIN(如pause命令)获取其输入,不刷新输入缓冲区(如choice命令)

如果需要文本输入(如set /p命令),则需要另一种方法:

echo inputtext|command 

最新更新