Bootstrap

为什么在 Windows 下用 Ctrl+Z 退出 Python 而 Linux 下用 Ctrl+D 呢?

打开我们的命令行,输入 ,我们会进入 的交互模式。

当我们想退出 ,返回我们的 时,你将如何退出?

如上,两个行之有效的方法是输入 或者 来中止这个 进程。

此外,还有一种更为人所熟知的方式: 使用快捷键退出 。而这个操作在 和 两个平台是不同的——前者使用 而后者使用 。但是,为什么不同呢?

EOF, end of file

这就不得不提起文件结束符 () 。

在 C 语言的 中, 实际上就是 :

#define EOF (-1)

C 语言之父肯·汤普森与丹尼斯·里奇恰好也是 的缔造者,而 深远地影响了操作系统的发展:无论是 还是 。

当我们接收输入的“程序”接收到 这个值时,程序便会知道:哦,这不就是 老兄吗!现在已经抵达文件的最末尾()了,我的接收输入的工作也就完成了,可以下班了!

咱们来看一个简单的 C 语言例子。

但注意, 并不是数值对象,而就是 这个输入值,我们无法通过键盘上的 直接键入,如果想要键入 ,那么就需要:

  • 在 上键入

  • 在 上键入

所以,你也就知道为什么 下用 退出 下用 了吧!

一些补充

有朋友问了, 也是杀死进程,为啥 不行呢?

我的理解是,在 的交互窗口里, 用于杀死 的子进程,比如你进入死循环了。

如果你真的想通过杀死进程的方式来退出 ,那我这里有一套 和 的命令。

tasklist | where {$_ -match "python"}
kill 

ps aux | grep python
kill -9