将chia绘图检查的输出从控制台保存到文件

2024-06-06 21:46:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我想将CLI命令chia plots check的日志输出写入一个文件

不幸的是,通常通过chia plots check > file.logchia plots check | tee file.log的方式没有成功

编辑python文件也不起作用,因为chia是通过.deb安装的

谢谢你的帮助


Tags: 文件命令log编辑clicheck方式deb
2条回答

解决 我也有同样的问题,我找到了答案

试试这个对我有用

chia plots check &> /home/chia/plot-check.log 

注意:如果要查看实时输出,必须跟踪文件

我使用python脚本解决了这个问题

from contextlib import redirect_stdout
import subprocess, re, os
with open('text.txt', 'w') as f:
    with redirect_stdout(f):      
        res = subprocess.check_output('chia plots check', shell=True, stderr=subprocess.STDOUT)
        ansi_escape = re.compile(b'(?:\x1B[@-Z\\-_]|[\x80-\x9A\x9C-\x9F]|(?:\x1B\[|\x9B)[0-?]*[ -/]*[@-~])')
        res = ansi_escape.sub(b'', res)
        print(res.decode('utf-8'))

我已使用redirect_stdout将输出流重定向到一个文件(所有打印都指向一个文件)。使用子流程库运行chia。由于输出包含颜色(ANSI),我使用正则表达式替换输出字节

相关问题 更多 >