在GUI中向嵌入式终端输入终端命令

时间:2018-09-27 16:19:52

标签: python tkinter

我对Python还是很陌生,所以请耐心等待。我查看了问题的可能重复内容,但无法为我解决。我以为我只是不太了解答案代码,但是我似乎无法获得我想要的终端命令,只是答案中使用的那个命令。

我指的答案可以在这里找到:Giving a command in a embedded terminal

我有一个简单的GUI,已将终端嵌入其中。这样做的目的是运行tcpdump捕获数据包。我写了一个简单的脚本就可以了,但是我想让它更容易在触摸屏上使用,因此在GUI上也很容易。

我设置了一个运行以下代码的按钮:

os.system('sudo tcpdump')

但是它不能在嵌入式终端中执行。

有人可以解释如何使此命令在GUI内嵌的终端中运行吗?

这是到目前为止我为GUI拥有的所有代码:

from tkinter import *
import os

class PcapGUI:
    def __init__(self, master):
        self.master = master
        master.title("Packet Captures")

        self.start_button = Button(master, text="Start", command=self.start)

        self.termf = Frame(root, height=400, width=500)

        self.wid = self.termf.winfo_id()

        os.system('xterm -into %d -geometry 70x20 -sb &' % self.wid)

    def start(self):
        os.system('sudo tcpdump')


root = Tk()
gui = PcapGUI(root)
root.mainloop()

感谢您的帮助!

0 个答案:

没有答案