Python装完是不能用tab来补全的,我们需要将脚本放到python指定的目录下,可以使用sys.path来查看一下目录
>>> import sys
>>> sys.path
['', '/usr/local/python2.7.10/lib/python27.zip', '/usr/local/python2.7.10/lib/python2.7', '/usr/local/python2.7.10/lib/python2.7/plat-linux2', '/usr/local/python2.7.10/lib/python2.7/lib-tk', '/usr/local/python2.7.10/lib/python2.7/lib-old', '/usr/local/python2.7.10/lib/python2.7/lib-dynload', '/usr/local/python2.7.10/lib/python2.7/site-packages']
一般我们会将这一类代码放在/usr/local/xxxxx/lib/python2.7/dist-packages目录下
[root@python ~]# cd /usr/local/python2.7.10/lib/python2.7/site-packages
[root@python site-packages]# vi tab.py
#!/usr/bin/env python
# python startup 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
[root@python site-packages]# python
Python 2.7.10 (default, Dec 4 2015, 23:46:26)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tab
>>> import sys
>>> sys.
sys.__class__( sys.__reduce_ex__( sys.argv sys.exit( sys.hexversion sys.py3kwarning
sys.__delattr__( sys.__repr__( sys.builtin_module_names sys.exitfunc( sys.long_info sys.setcheckinterval(
sys.__dict__ sys.__setattr__( sys.byteorder sys.flags sys.maxint sys.setdlopenflags(
sys.__displayhook__( sys.__sizeof__( sys.call_tracing( sys.float_info sys.maxsize sys.setprofile(