bash中无法识别的命令由python解释器捕获[closed]
发布时间:2020-12-15 18:50:22 所属栏目:安全 来源:网络整理
导读:每次我尝试在控制台(/ bin / bash)中调用不存在的命令(例如$a)时,解释器等待很长时间.当我中断它(^ C),我从 Python解释器得到一个错误消息.而不是这样,我希望它告诉我,这个命令是无法识别的.为什么会发生这种情况? $a^CTraceback (most recent call last):
每次我尝试在控制台(/ bin / bash)中调用不存在的命令(例如$a)时,解释器等待很长时间.当我中断它(^ C),我从
Python解释器得到一个错误消息.而不是这样,我希望它告诉我,这个命令是无法识别的.为什么会发生这种情况?
$a ^C Traceback (most recent call last): File "/usr/lib/python2.7/encodings/__init__.py",line 32,in <module> root@dell:/home/antonio/workspace/biz_index# from encodings import aliases File "/usr/lib/python2.7/encodings/aliases.py",line 17,in <module> """ KeyboardInterrupt ^C
如果设置PATH =“”修复它,那么某些东西就是遮蔽一个被命令未找到的包调用的python包.我最近通过编写一个名为struct.py的脚本自己做了这个.您需要浏览路径中的每个目录,即
/home/antonio/.local/bin /home/antonio/.local/bin /usr/local/sbin /usr/local/bin?? /usr/sbin /usr/bin /sbin /bin /usr/games /usr/local/games 并在那里查找.py文件.其中一个与一个内置的Python包共享一个名称.或者,您可以从PATH中删除目录,然后将其重新插入,直到找到哪个中断它.找到它后,您需要将其删除或重命名. 这是一个shell一线,为你做: for dir in $(echo $PATH | tr ":" "n"); do ls -1 $dir | grep "[.]py"; done 您可以通过尝试以下操作(从几天前重新创建我的错误)在自己的shell中测试这个: echo 'print("HELLO WORLD")' >> struct.py 现在在我的shell中,留在当前目录下,我看到: ? client git:(master) ? a HELLO WORLD zsh: command not found: a 大概在你的案例中正在做阴影的Python脚本正在做一些比打印“HELLO WORLD”更多的资源,因此挂起来. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |