またはstdout
などのコンソール GUI を起動するインタラクティブな Python スクリプトを使用して、を引き継ぐ場合。いくつかのアクションを実行してループを閉じた後、で印刷されたパスに移動するにはどうすればよいですか?curses
urwid
cd
stdout
例えば、
import sys
import urwid
def check_for_q(key):
if key in ('q', 'Q'):
raise urwid.ExitMainLoop()
txt = urwid.Text(u"Thanks for helping")
fill = urwid.Filler(txt, 'top')
loop = urwid.MainLoop(fill, unhandled_input=check_for_q)
loop.run()
sys.stdout.write('/usr/bin')
q
実行時にまたはを押してループQ
を終了する場合:urwid
(py27) $ python curses_script.py
/usr/bin
(py27) $
これが にのみ出力する単純な python スクリプトであればstdout
、cd $(python simple_script.py)
. ただし、上記の場合、python サブシェルがstdout
入力のハイジャックと処理に失敗するため、これはハングします。
ファイルに書き込まずにこれを回避することは可能ですか?