我想在 Windows 上的单独控制台窗口中输出一些数据。
因此,我启动一个新的子进程,调用“cmd”来打开一个新窗口并开始通过 stdin.write() 方法进行写入:
import subprocess
import time
cli_ampel_proc = subprocess.Popen(['cmd'], stdin=subprocess.PIPE, creationflags=subprocess.CREATE_NEW_CONSOLE, text=True)
cli_ampel_proc.stdin.write('@echo off\n')
cli_ampel_proc.stdin.flush()
cli_ampel_proc.stdin.write('cls\n') # Clear the console
cli_ampel_proc.stdin.write('echo Start\n')
cli_ampel_proc.stdin.flush()
time.sleep(3)
我想要的是一个干净的输出,仅显示:
Start
但是我明白了:
echo Start
Start
如何隐藏第一行(
echo Start
)?
在命令前添加
@
,这样 @echo start