在Qt里使用QProcess启动bash,然后启动了一个roslaunch
以往结束它都是直接关闭终端,或ctrl+c
结束
但完全在Qt里启动的命令行却不知道怎么解决
因为是买的古月居的课,所以在群里请教了老师。
建议是使用kill杀死进程
进程每次pid号不一样,所以通过他们的名字来杀死
以下是实现过程:
首先查看当前有哪些进程
ps -ef
# 这里只列出相关的
guyue 4187 3807 6 10:13 pts/2 00:00:01 /usr/bin/python /opt/ros/melodic/bin/roslaunch realsense2_camera rs_camera.launch
guyue 4213 4187 54 10:13 ? 00:00:10 /opt/ros/melodic/lib/nodelet/nodelet manager __name:=realsense2_camera_manager __l
guyue 4214 4187 0 10:13 ? 00:00:00 /opt/ros/melodic/lib/nodelet/nodelet load realsense2_camera/RealSenseNodeFactory r
然后根据进程的关键字杀死相关进程
pkill -f "realsense"