Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在我的应用程序中需要类似终端小部件的东西,但没有像 Bash 这样的外壳。我听说过VTE。要将 VTE 与我使用的 shell 连接起来:
Vte.Terminal.fork_command_full(0, "/home/user", ("/bin/bash",), "", 0, None, None)
是否有可能将输入数据重定向到自定义函数而不是 shell?
如果 VTE 不可能,我想知道其他建议如何解决我的问题。
你可以传递任何你想传递的命令fork_command_full,但是,听起来你几乎想要一个更像文本条目的东西,你允许用户输入命令,然后你的代码处理执行命令和处理它返回的数据。
fork_command_full
为此,我将使用subprocess.Popen然后将命令的输出加载到Gtk.TextView使用文本标签中,以将 stderr 标记为红色文本。
subprocess.Popen
Gtk.TextView