![](/img/trans.png)
[英]How to capture display output from a command prompt in Windows at any moment?
[英]Handle Windows command prompt input from keyboard and display output and also redirecting it to a file?
尽管我可以找到一些相关的问题,例如“ 显示Windows命令提示符输出并将其重定向到文件”,以及如何在bat脚本中回显并将控制台输出发送到文件? ,我无法解决问题。 我在Windows XP上工作,并使用使用STDIN和STDOUT句柄的批处理文件运行一些脚本。
基本上,我想保存命令提示符的日志文件。 可以通过批处理文件中的“ echo >> log.txt”来实现。 但是,这不会保存脚本文件生成的输出。 因此,我在cmd提示符下尝试了D:> file.bat>“ dir_path / log.txt”。 再次,此命令将STDOUT保存到指定位置的log.txt。 由于我需要获取一些用户输入(即使用STDIN句柄),除了将命令提示符的输出也保存在单独的文件中之外,如何实现这一点?
答案很简单:
@echo off
set /p answ1=Get user input1
set /p answ2=Get User input2
echo %answ1% and %answ2%>>log.txt
notepad log.txt
set /p "var=<log.txt"
type log.txt
即使将.bat文件重定向到文件,也可以使用>con
输出到屏幕。
使用test.bat >test.out
执行以下脚本。 它将提示您在屏幕上输入。
timeout -t 2
>con set /p "var1=Prompt1: "
ipconfig
>con set /p "var2=Prompt2: "
echo %var1% %var2%
>con echo %var1% %var2%
exit /b
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.