python真是一个好东东
具体好处不用说
用了的人都知道
项目中一般用的软件有
autoconf-2.65.tar.gz install.py lua-5.1.4.tar.gz Python-2.6.5.tar vim_killone.tar
automake-1.11.tar.gz libiconv-1.13.1.tar.gz m4-1.4.13.tar.gz scons-2.0.0.alpha.20100508.tar.gz
boost_1_42_0.zip libtool-2.2.6.rar mysql-5.5.2-m2.tar.gz screen-4.0.3.tar.gz vimrc_wangfan
google-perftools-1.5.tar.gz libxml2-2.7.4.tar.gz OOo_3.2.0_LinuxIntel_install_zh-CN.tar.gz setup.txt vim.zip
gperf-3.0.1.tar.gz log4.tar.gz python-2.6.5-docs-pdf-a4.zip tolua++-1.0.93.tar.gz
安装一次很崩溃
写了一个python的自动安装软件脚本
2010年6月1日整理下面的代码,运行的时候输入:
./install.py 默认安装 清理残余文件
./install.py install 安装不清理残余文件
./install.py clear 只清理残余文件
#!/usr/bin/python
# Filename: install.py
print 'start install software'
print 'please input install or clear or setup defalut is all'
import os
import sys
dir = './'
def uncompressfile(filename):
'''uncompress file'''
sStr2 = '.'
end = filename.split(sStr2)[-1]
command = ''
if end == 'zip':
command = 'unzip f ./' + filename
elif end == 'gz':
command = 'tar zxvf ./'+ filename
elif end == 'tar':
command = 'tar xvf ./'+ filename
elif end == 'bz2':
command = 'tar jxvf ./'+ filename
elif end == 'rar':
command = 'rar xf ./'+ filename
if os.system(command) == 0:
print 'Successful uncompress to ./'
else:
print 'Uncompress FAILED'
def installfile(filename):
print filename
command = ''
if filename.find('scons') > 0:
command = 'cd '+ filename + '&& chmod 777 ./* -R &&./setup.py install '
elif filename.find('tolua') > 0:
command = 'cd '+ filename + '&& scons '
elif filename.find('boost') > 0:
command = 'cd '+ filename + '&& chmod 777 ./* -R && bootstrap.sh && ./bjam --thread-mutli install '
else:
command = 'cd '+ filename + '&& ./configure &&make &&make install '
if os.system(command) == 0:
print 'Successful install' + filename
else:
print 'install FAILED' + filename
def install():
'''install soft'''
for root, dirs, files in os.walk(dir):
for name in dirs:
installfile(name)
break;
def unpack():
'''walk dir'''
for root, dirs, files in os.walk(dir):
for name in files:
uncompressfile(name)
break;
def clear():
'''walk dir'''
for root, dirs, files in os.walk(dir):
for name in dirs:
print name
command = 'rm ./'+ name + '/ -rf'
print command
if name == '.svn':
continue
elif os.system(command) == 0:
print 'Successful remove ' + name
else:
print 'remove FAILED' + name
break;
if len(sys.argv) < 2:
input = ''
else:
input = sys.argv[1]
if input == 'install':
unpack()
install()
elif input == 'clear':
clear()
elif input == 'setup':
install()
elif input == '':
unpack()
install()
clear()
基本上能用
软件的依赖问题还没有解决(不过很好解决,最简单的方法是修改文件名,用1,2,3排序就行了)
mysql 安装有点烦人
好在有svn
以后慢慢维护吧。
python只是学着随便玩玩,很好很喜欢。