Python3.x一键安装脚本(Linux)

Python3.x一键安装脚本(Linux)

此脚本支持在Linux环境中一件安装Python。
如果脚本所在目录中有Python-xxx.tgz的安装包,则会跳过下载直接进行安装。
如果没有则会先下载Python-xxx.tgz安装包,然后进行安装。
(xxx为指定的版本号,如3.2.12)

默认直接执行脚本就行。

具体操作如下:

1、新建install_python.sh文件

#!/bin/bash
# 检查参数个数
if [ "$#" -eq 0 ]; then
    echo -e "\033[31m未提供版本号,脚本结束执行。。。\033[0m"
    exit 0
fi
if [ "$#" -eq 1 ]; then
    echo -e "\033[31m未提供安装路径,脚本结束执行。。。\033[0m"
    exit 0
fi
version=$1
install_path=$2
filename="Python-${version}.tgz"
echo -e "\033[32m开始安装开发库,请稍等......\033[0m"
yum -y groupinstall "Development tools" &> /dev/null
echo ' '
echo -e "\033[32m开始安装依赖环境,请稍等......\033[0m"
yum -y install zlib zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel wget &> /dev/null
echo ' '
echo -e "\033[32m开始安装zlib zlib-devel bzip2-devel openssl-devel等依赖包,请稍等......\033[0m"
yum -y install libffi-devel &> /dev/null
echo ' '
mkdir -p ${install_path}
# 判断当前目录是否存在安装包,不存在则去下载
if [ -f "$filename" ]; then
    echo -e "\033[32m当前目录存在安装包,跳过下载。。。\033[0m"
else
    echo -e "\033[32m开始下载 python${version} 源码包,请稍等......\033[0m"
    wget https://www.python.org/ftp/python/${version}/${filename} -P ./ &> /dev/null
	if [ -f "$filename" ]; then
		echo -e "\033[31m安装包下载失败,结束安装。。。\033[0m"
		exit 0
	fi
fi
echo ' '
echo -e "\033[32m开始解压源码包,请稍等......\033[0m"
tar xf ./${filename} -C ${install_path} &> /dev/null
echo ' '
echo -e "\033[32m开始编译安装,请稍等......\033[0m"
cd ${install_path}/Python-${version}
./configure prefix=${install_path} --with-ensurepip=install &> /dev/null
sleep 5
make &> /dev/null
make install &> /dev/null
sleep 5
echo ' '
echo -e "\033[31m开始删除原文件,请稍等......\033[0m"
rm -rf ${install_path}/Python-${version}
echo -e "\033[33m开始备份软连接,请稍等......\033[0m"
mv /usr/bin/python /usr/bin/python.bak
echo -e "\033[32m开始创建软连接,请稍等......\033[0m"
# 注意这里的软连接只适合3.x版本,如果是2.x版本需要将下面的python3改成python2
ln -s ${install_path}/bin/python3 /usr/bin/python
echo ' '
echo -e "\033[32m更改 yum 脚本的 python 依赖,请稍等......\033[0m"
sed -i 's/\#\!\/usr\/bin\/python/\#\!\/usr\/bin\/python2/' /usr/bin/yum
sed -i 's/\#\! \/usr\/bin\/python/\#\! \/usr\/bin\/python2/' /usr/libexec/urlgrabber-ext-down
echo ' '
echo -e "\033[33mPython${version} 安装成功\033[0m"
echo -e "\033[32m执行【python -V】命令查询版本号\033[0m"
eval "python -V"

2、给文件赋权限

chown -R 755 install_python.sh

3、执行脚本

# 参数一:版本号 
# 参数二:安装路径
./install_python.sh 3.12.2 /usr/local/python3

执行时间较长,需等待执行完毕。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dushuaifeng

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值