簡體   English   中英

處理來自鍵盤的Windows命令提示符輸入並顯示輸出,還將其重定向到文件?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM