嘿,我正在尝试将交互式命令的输出打印到 python 脚本内的文件中,然后转到下一行。
我不确定如何实现这一目标。我努力了:
os.system("mnamer foo.mkv > mnamer.txt")
仅供参考,可以使用“mnamer”从脚本内部导入和调用 mnamer
上面的命令将我需要的信息记录在一个文件中,但我需要它通过提示符并读取下一行代码。
有没有一种python特定的方式来做到这一点?
嘿,我正在尝试将交互式命令的输出打印到 python 脚本内的文件中,然后转到下一行。
我不确定如何实现这一目标。我努力了:
os.system("mnamer foo.mkv > mnamer.txt")
仅供参考,可以使用“mnamer”从脚本内部导入和调用 mnamer
上面的命令将我需要的信息记录在一个文件中,但我需要它通过提示符并读取下一行代码。
有没有一种python特定的方式来做到这一点?
如果您可以将 mnamer 作为 python 模块导入,请这样做,以这种方式使用它,并通过将sys.stdout
sys.stderr 临时分配给文件来将其输出记录到文件中:
import mnamer
import sys
logfile = open("/path/to/log/file.txt", "w") # open the logfile
stdout, stderr = sys.stdout, sys.stderr # make copies of these to be able to restore them after the mnamer commands
sys.stdout = logfile # assign stdout to logfile, infos will be written there
sys.stderr = logfile # assign stderr to logfile, errors will be written there too
# put your mnamer commands here
mnamer.some_method_of_mnamer_module()
sys.stdout = stdout # restore stdout so that further infos will be printed to terminal again
sys.stderr = stderr # restore stderr so that further errors will be printed in terminal again
logfile.close() # close the logfile