在终端不能使用ctrl+c的解决
2011-10-24 16:26
169 查看
我的终端工具用的是secureCRT,android系统是挂载的,但在调试电话系统部分的时候,比如说ping (ip),他就一直运行,不能停止,不能用ctrl+c终止,很不方便。要实现ctrl+c的功能,在我的system/core/init下的init.c中的114行有一个open_console()函数,按照下面的代码进行修改,其实也就是增加一个loctl函数,就可以实现了。
static void open_console()
{
int fd;
if ((fd = open(console_name, O_RDWR)) < 0)
{
fd = open("/dev/null", O_RDWR);
}else {
ioctl(fd,TIOCSCTTY,0);
}
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
close(fd);
}
static void open_console()
{
int fd;
if ((fd = open(console_name, O_RDWR)) < 0)
{
fd = open("/dev/null", O_RDWR);
}else {
ioctl(fd,TIOCSCTTY,0);
}
dup2(fd, 0);
dup2(fd, 1);
dup2(fd, 2);
close(fd);
}
相关文章推荐
- 解决Vim使用ctrlp+ag搜索不能扫描隐藏的文件和目录和自定义忽略文件问题
- VirtualBox下RedHat不能使用Ctrl+C快捷键解决
- ubuntu下新建用户的终端不显示当前路径,不能用上下光标键得到使用过的命名解决办法
- ubuntu下使用codeblocks编程运行时终端不能复制粘贴的解决方法
- sublime2的html自动排版快捷键ctrl+alt+f不能使用解决方法
- zsh ctrl-r 不能使用解决办法
- ubuntu下使用codeblocks编程运行时终端不能复制粘贴的解决方法
- sudoers修改不能在终端使用sudo 和su的解决方法
- Visual Studio格式化快捷键(Ctrl+E,Ctrl+D)不是命令,不能使用的解决方法
- 使用终端连接docker 内部的MySQL不能连接的解决办法
- VirtualBox下RedHat不能使用Ctrl+C快捷键解决
- ubuntu下使用codeblocks编程运行时终端不能复制粘贴的解决方法
- ubuntu下新建用户的终端不显示当前路径,不能用上下光标键得到使用过的命名解决办法
- 终端下Vim使用VimIm插件时按<CTRL-^>和<CTRL-_>无反应或完全无法使用的解决方法
- linux sudoers修改导致不能在终端使用sudo 和su的解决方法
- CTRL+C和CTRL+V不能使用的解决办法
- 解决Android Studio2.0不能使用HttpClient
- !process 不能使用解决
- 解决vim不能使用方向键和退格键问题
- iOS9 HTTP 不能正常使用的解决办法