gpt4 book ai didi

python - "Press"程序运行时输入"automatically"

转载 作者:行者123 更新时间:2023-12-01 02:29:15 27 4
gpt4 key购买 nike

我正在从 bat 文件或 Python 文件调用外部程序 (fxTsUtf8.exe)。我浏览了数百个 sos 文件。在某些情况下,exe 文件可能会由于读取 sos 文件中的错误而失败。要继续执行 exe 文件,需要按下 Enter 键。在这种情况下如何强制输入“enter”?

我运行的是 Windows 7 和 Python 3.5。我尝试了两种方法。

1) 仅使用bat 文件tegnsett2utf8.bat调用(也尝试过start)C:直接\Fysak\fxTsUtf8.exe:

@echo off
REM For all subfolders
for /D /r %%s in ("*") do (
echo Subfolder %%~nxs
REM For all sosifiles
for %%f in (%%s\*.sos) do (
echo File %%f
call C:\Fysak\fxTsUtf8.exe %%f
)
)

2) 从 tegnsett2utf8.bat 调用 Python 文件 2utf8.py 来运行 fxTsUtf8.exe:

@echo off
REM For all subfolders
for /D /r %%s in ("*") do (
echo Subfolder %%~nxs
REM For all sosifiles
for %%f in (%%s\*.sos) do (
echo File %%f
python 2utf8.py %%f
)
)

其中2utf8.py看起来像这样

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys # for å kunne lese variable
import subprocess # for å starte et annet program

fn = sys.argv[1]

print('Python - filnavn er: '+fn)
print('----------------------------------------')
# Run fxTsUtf8 to convert to UTF-8 encoding
try:
subprocess.call(['C:\\Fysak\\fxTsUtf8.exe', fn])
except RunTimeError:
pass

两种情况下屏幕上的输出(在cmd窗口中):

> C:\adhoc\SOSI_til_UTF8\Org\detalj\aas\aas21.sos Python - filnavn er:
> C:\adhoc\SOSI_til_UTF8\Org\detalj\aas\aas21.sos
> ----------------------------------------
>
> fxTsUtf8 v. H1.1: Konverterer til UTF-8 tegnsett ...ORIGO-N├? mangler
> i filhodet. (Feil tegnsett?) Trykk [Enter] for Õ avbryte programmet:

但是我无法弄清楚如何让 bat 文件或 py 文件继续到下一个 sos 文件而不按 Enter 键。

最佳答案

你可以试试

echo; | call C:\Fysak\fxTsUtf8.exe %%f

这应该将 CRLF 通过管道传输到输入缓冲区中,以便调用 fxTsUtf8.exe

关于python - "Press"程序运行时输入"automatically",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47034321/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com