2016-03-04 72 views
1

我发现,在我的ubuntu15.10,我无法执行* .pyc文件文件中像如何执行* .pyc文件的文件直接在Linux终端

$ echo 'print "Hello"' > print.py 
$ chmod +x print.py 
$ python -c 'import print' 
$ ./print.pyc 

但另一台PC上(ubuntu15.10太) ,它可以被执行。在这个链接中( https://superuser.com/questions/73615/how-do-pyc-files-execute/73649#73649),我知道这是因为我的系统没有.pyc文件的binfmt_misc条目。所以我的问题是如何添加它。

回答

0

我不确定你有什么Linux发行版。对于除此之外的所有基于Debian的发行版,这应该安装必要的文件:

import imp,sys,string 
magic = string.join(["\\x%.2x" % ord(c) for c in imp.get_magic()],"") 
reg = ':pyc:M::%s::%s:' % (magic, sys.executable) 
open("/proc/sys/fs/binfmt_misc/register","wb").write(reg) 

对于Debian,您可以通过安装binfmt-support安装必要的程序包。

Source

祝你好运,快乐编码!

+0

它的工作原理。非常感谢! :) –

+0

@ZHAOPengyu没问题!如果解决方案是正确的,请记住将其标记为未来的程序员。 –