首先把pip-18.0.tar.gz 、Python-3.6.5.tgz 安装包放在 /usr/local 下面,按照顺序先安装pip,再安装python。不要先安装或只安装python,否则很容易出错,
[root@bogon ~]# cat pip-python.sh
#!/bin/bash
func1(){
yum -y groupinstall "Development tools"
[ $? -eq 0 ] && yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
}
func2(){
yum remove pip -y && cd /usr/local/ && tar -xf pip-18.0.tar.gz && cd pip-18.0/ && python setup.py install
[ $? -eq 0 ] && echo "安装完成pip"
}
func3(){
cd /usr/local/ && tar -zxvf Python-3.6.5.tgz && mv Python-3.6.5 python3 && cd python3 && ./configure && make && make install
[ $? -eq 0 ] && mv /usr/bin/python /usr/bin/python.bak
[ $? -eq 0 ] && ln -s /usr/local/bin/python3 /usr/bin/python && ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
[ $? -eq 0 ] && whereis pip && /usr/local/bin/pip3.6 install --upgrade pip && /usr/local/bin/pip install paramiko
[ $? -eq 0 ] && sed -i "1c #!/usr/bin/python2.7" /usr/bin/yum
[ $? -eq 0 ] && sed -i "1c #!/usr/bin/python2.7" /usr/libexec/urlgrabber-ext-down
[ $? -eq 0 ] && sed -i "1c #!/usr/bin/python2.7" /usr/sbin/firewalld
[ $? -eq 0 ] && sed -i "1c #!/usr/bin/python2.7" /usr/sbin/firewalld
[ $? -eq 0 ] && echo "安装完成python"
}
#脚本菜单函数
menu(){
clear
echo "# 1. 安装依赖包"
echo "# 2. 安装pip"
echo "# 3. 安装python"
echo "# 4. 退出程序"
}
#功能选择函数
choice(){
read -p "Please choice a menu[1 2 3 4]:" select
}
#程序开始
while true
do
menu
choice
case $select in
1)
func1;;
2)
func2;;
3)
func3;;
4)
exit;;
*)
echo "choice error"
esac
done