当前位置: 技术问答>linux和unix
怎么让程序捕获Ctrl+D?
来源: 互联网 发布时间:2016-07-21
本文导语: 我相让程序捕获shell中输入的Ctrl+D 然后执行一系列操作,我该怎么处理呢? Ctrl+D是不是不发送信号? | Ctrl+D 发送EOF(end-of-file) 如果你想给进程发信号的话, 可以用命令:kill -USR1 PID(进程ID...
我相让程序捕获shell中输入的Ctrl+D
然后执行一系列操作,我该怎么处理呢?
Ctrl+D是不是不发送信号?
然后执行一系列操作,我该怎么处理呢?
Ctrl+D是不是不发送信号?
|
Ctrl+D 发送EOF(end-of-file)
如果你想给进程发信号的话,
可以用命令:kill -USR1 PID(进程ID) :
然后程序中有对应的信号处理函数就可以了。
如果你想给进程发信号的话,
可以用命令:kill -USR1 PID(进程ID) :
然后程序中有对应的信号处理函数就可以了。
|
ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF
while(1)
{
c=getchar();
if(c==EOF)
exit(0);
}
while(1)
{
c=getchar();
if(c==EOF)
exit(0);
}
|
linux下:
ctrl-c 是发送 SIGINT 信号,终止一个进程
ctrl-z 是发送 SIGSTOP信号,挂起一个进程
ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF
文章出处:DIY部落(http://www.diybl.com/course/6_system/linux/Linuxjs/20090312/160903.html)
ctrl-c 是发送 SIGINT 信号,终止一个进程
ctrl-z 是发送 SIGSTOP信号,挂起一个进程
ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF
文章出处:DIY部落(http://www.diybl.com/course/6_system/linux/Linuxjs/20090312/160903.html)
|
同楼上 顶