Linux python 自动补全详解编程语言

为Python添加交互模式下TAB自动补全以及命令历史功能。

1.获取python目录

[[email protected] ~]# python 
Python 2.6.6 (r266:84292, Jul 23 2015, 15:22:56)  
[GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import sys 
>>> sys.path 
['', '/usr/lib/python2.6/site-packages/paramiko-1.7.7.1-py2.6.egg', '/usr/lib64/python26.zip', '/usr/lib64/python2.6', '/usr/lib64/python2.6/plat-linux2', '/usr/lib64/python2.6/lib-tk', '/usr/lib64/python2.6/lib-old', '/usr/lib64/python2.6/lib-dynload', '/usr/lib64/python2.6/site-packages', '/usr/lib64/python2.6/site-packages/gst-0.10', '/usr/lib64/python2.6/site-packages/gtk-2.0', '/usr/lib64/python2.6/site-packages/webkit-1.0', '/usr/lib/python2.6/site-packages', '/usr/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg-info'] 
>>>  

从上面看出python在我系统上的路径是  /usr/lib/python2.6/site-packages

2.切换至该目录写个tab.py的脚本,脚本目录就是处理python中<tab>事件,脚本内容如下

 [[email protected]]# cd /usr/lib/python2.6/site-packages

[[email protected] python2.6/]# vim tab.py

#!/usr/bin/python 
# python tab file 
   
import sys 
import readline 
import rlcompleter 
import atexit 
import os 
# tab completion 
readline.parse_and_bind('tab: complete') 
# history file 
histfile = os.path.join(os.environ['HOME'], '.pythonhistory') 
try: 
    readline.read_history_file(histfile) 
except IOError: 
    pass 
atexit.register(readline.write_history_file, histfile) 
   
del os, histfile, readline, rlcompleter

3.切换至自己主目录

[[email protected] python2.6]# cd  
[[email protected]  ~]# vim .bashrc  

4. 增加环境变量

export PYTHONSTARTUP=/usr/lib/python2.6/site-packages/tab.py  

5.配置环境变量生效

[[email protected] ~]# source .bashrc   

  

  

  

 

 

 

 

 

 

 

 

 

  

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/11662.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论