我打算创建一个GUI,该GUI需要在linux终端上执行一些命令。如何在Tkinter GUI按钮上执行Linux终端命令?
答案 0 :(得分:1)
您需要一个在单击按钮时运行Linux命令的功能。
为此,Python的内置库subprocess
就足够了。为了在终端中运行简单的ls -l
,语法如下:
subprocess.run(["ls", "-l"])
对于带有用法的示例tkinter
程序,必须将subprocess.run()
包装在一个函数中。例如:
from tkinter import *
import subprocess
def run():
subprocess.run(["ls", "-l"])
root = Tk()
Button(root, text="Click to run 'ls -l'", command=run).pack()
root.mainloop()
要详细了解subprocess
模块以及如何从终端捕获输出:https://docs.python.org/3/library/subprocess.html
答案 1 :(得分:0)
要执行命令,请使用名为 subprocess 的python模块。代码如下:
import subprocess
test = subprocess.Popen(["ping","-W","2","-c", "1", "192.168.1.70"], stdout=subprocess.PIPE)
output = test.communicate()[0]
print(output)