完成过程后如何杀死终端

我正在为我的项目学习bash脚本和python,我想在执行完成后杀死终端。我在一个终端上运行我的进程,当我执行它时,它会打开一个新终端并执行请求的操作,然后在完成后必须关闭新终端,这是没有发生的。我的代码是:


import os    

os.system(""xfce4-terminal -e 'bash -c \"./testing.sh; exec bash\"'") 

当我运行它时,它将打开新的终端并在其中执行,执行后,“ pwd”为


ubuntu:-/home/new$

无法将任何命令发送到那里。

完成后,我想终止该终端,因为对于下一次执行,我想打开新的终端。


我试过了它很好,但不知道如何在python脚本中添加:


a=`tty`    

echo $a   

b=`tty | sed 's/\/dev//'`  

echo $b  

c=`ps aux | grep $a | grep 'bash$' | awk '{print $2}'`  

echo $c  

d= `$c | awk '{print $1}'   

kill -9 $d  

寻找建议,请指导我获得解决方案。提前致谢。


守候你守候我
浏览 172回答 3
3回答

慕桂英4014372

终端在其最后一个子进程退出时关闭。这将满足我的要求:os.system("xfce4-terminal -e 'bash -c \"echo hello ; /bin/bash ; exit 0\"'")我测试了添加以回应评论Ubuntu中有一个shell脚本,/usr/bin/usb-devices该脚本会打印到stdout,然后退出。如果我运行Pythonos.system("xfce4-terminal -e /usr/bin/usb-devices")然后出现一个终端,显示脚本的输出,然后终端退出。确实没有比这更简单的了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python