2016-03-04 71 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沒問題!如果解決方案是正確的,請記住將其標記爲未來的程序員。 –