我想分析一下我用KDevelop编写的程序。 我编译程序并用
启动它右键单击CMake项目 - >调试为... - >原生申请
现在程序在KDevelop中运行,我可以在控制台上看到嵌入KDevelop的输出。 当我按 Ctrl + C “(SIGTERM)时,我的程序停止运行。当我在KDevelop外的控制台中运行程序时,我可以按它。
如何将信号“SIGTERM”发送到KDevelop内的嵌入式控制台?
作为一种解决方法,我可以启动 htop ,选择程序并从那里发送SIGTERM,虽然在KDevelop本身拥有所有功能会更好。
答案 0 :(得分:1)
一种可能的解决方案是:
signal <Signal>
,例如signal SIGTERM
答案 1 :(得分:0)
使用kill命令向进程发送信号。 kill -l
应该为您提供信号及其ID的列表。
例如,在FreeBSD上,SIGTERM信号为#15,如此输出所示:
$ kill -l
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGEMT 8) SIGFPE 9) SIGKILL 10) SIGBUS
11) SIGSEGV 12) SIGSYS 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGURG 17) SIGSTOP 18) SIGTSTP 19) SIGCONT 20) SIGCHLD
21) SIGTTIN 22) SIGTTOU 23) SIGIO 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGINFO 30) SIGUSR1
31) SIGUSR2
所以要将SIGTERM发送到我的进程,我查找进程ID,然后发送一个kill命令,如下所示:
kill -15 <process ID>
答案 2 :(得分:0)
您可以从KDevelop内部发送SIGINT:
运行 - &gt;中断
但是你不能发送任何其他信号。
如果您认为这是一个有用的功能,请在bugs.kde.org上创建一个愿望请求 - 最终包含一个附加补丁:D