我试图在linux中实现一个简单的shell,它应该具有的功能之一是使用户能够按<ctrl+D>
并使其停止,无论它在做什么 - 基本上完全是<ctrl+C>
在Bash中所做的。简单的Linux Shell。停止命令
现在我想知道最简单的方法来做到这一点,我正在考虑一些可以使当前任务停止的关键侦听器。现在我能想到的唯一方法就是创建一个单独的线程,它会强制停止并将主线程返回到基本状态,并在此处接受新的输入。
一个单独的线程将是“不断”侦听正确按键的唯一方法。
我希望对此有所想法,并可能有更好的方法去做。
[编辑] 我试图做一个简单的shell,它可以执行外部程序,打印/更改目录,打印/设置路径,打印命令历史记录,从历史记录调用命令和打印/设置/删除命令别名。 CTRL-D意味着等同于Bash中的CTRL-C,它允许用户立即退出正在运行的程序,而不是退出shell本身。 [/编辑]
这似乎是一个完全合理的,真实的,建设性的问题给我。提议的/期望的键盘映射是不寻常的,但这并不是错误的;它只是不同而已。你可能会问“你有什么尝试”,但这个问题基本上是合理的。 – 2013-02-15 04:15:38