shell腳本安裝python、pip--交互式的


首先把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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM