簡體   English   中英

使用python將日志文件的內容打印到curses屏幕

[英]printing contents of log file to curses screen using python

為什么這不起作用? - 這里的完整代碼... http://pastebin.com/f940nPPg

....snip
f = open(log, 'r')
y = 3;
x = 3;

while True:
    c = quote_window.getch() 
    if c == ord('r') or c == ord('R'):
        quote_text_window.clear()
        quote_text_window.refresh()
        for line in f:
            quote_text_window.addstr(line)
            y = y + 1
            quote_text_window.move(y, x)

    elif c == ord('q') or c == ('Q'):
        break

    stdscr.noutrefresh()
    quote_window.noutrefresh()
    quote_text_window.noutrefresh()
    curses.doupdate()
f.close()
....snip

我收到錯誤

    quote_text_window.addstr(line)
    _curses.error: addwstr() returned ERR

如果我通過addstr()傳遞一個字符串文字我得到

    quote_text_window.move(y, x)
    _curses.error: wmove() returned ERR

我正在嘗試開發一個用於讀取日志文件的curses界面。 我希望它利用ssh或其他東西,所以我可以在一個界面中從各種計算機讀取各種日志文件。 我確定有很多偉大的程序可以做這種事情,但我認為這將是一個很好的學習方式。 我是編程,python和curses的新手(你可能會說)

您是否可以提供包含注釋的整個代碼來解釋您認為可能導致問題的某些部分? 無論如何,你的日志文件有多少行? 因為,如果行太多,它就不會運行,就像我的終端是80 col和24行一樣,所以如果我有一個21行的日志文件,程序就不能運行了。

就像Cold Diamondz說的那樣,文本文件不能比窗口大,但是如果你使用一個打擊墊,你可以調用一個大文件並告訴打擊墊要刷新哪些尺寸。 檢查墊http://docs.python.org/3.3/howto/curses.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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