在尝试无效命令时,在终端中按Ctrl + C生成python回溯

时间:2014-12-07 10:10:36

标签: python linux shell unix terminal

我在linux终端输入了一个无效命令d。它通常需要大约1秒才能打印d: command not found。今天,我点击Ctrl+C之后才打印出未找到的命令',并得到以下输出:

user@mypc:~/$ d
^C
user@mypc:~/$ Failed to import the site module
Traceback (most recent call last):
  File "/usr/lib/python3.4/site.py", line 586, in <module>
    main()
  File "/usr/lib/python3.4/site.py", line 573, in main
    known_paths = addsitepackages(known_paths)
  File "/usr/lib/python3.4/site.py", line 358, in addsitepackages
    addsitedir(sitedir, known_paths)
  File "/usr/lib/python3.4/site.py", line 212, in addsitedir
    addpackage(sitedir, name, known_paths)
  File "/usr/lib/python3.4/site.py", line 164, in addpackage
    f = open(fullname, "r")
KeyboardInterrupt

user@mypc:~/$

为什么会这样?

编辑:这是哪个命令的输出:

$ which xyx
$
$ which d
$

2 个答案:

答案 0 :(得分:2)

Ubuntu在他们的Bash设置中包含一个"command not found" handler,它是用Python编写的。我猜你打断了那个。

一秒钟听起来很长一段时间。你的系统是老了还是负载很重?

答案 1 :(得分:0)

当你点击键盘中断键时,python可能无法到达你的程序中那些替代&#34; d&#34;进入一组特定的代码,通常会产生此错误。所以你没有错误&#34; d: command not found&#34;还有你的代码的另一部分也需要&#39; d&#39;在它到达代码之前,d: command not found现在给出错误,因为&#39; d&#39;不是数字。

然而,根据信息...当python调用其中一个模块时,您的程序似乎被中断,因此您有一条错误消息,因为此过程尚未完成。