pyenv_install.sh
#!/bin/bash
#
#********************************************************************
#Author : shchangming
#QQ : 414945814
#Date : 2015-5-21
#FileName : pyenv_install.sh
#URL : https://www.cnblogs.com/shichangming
#Description : The script is to install pyenv on some one home_dir
#Copyright (C) : 2015 All rights reserved
#********************************************************************
#####Only suitable for CentOS ######
if [ $UID -ne "0" ];then
echo "sorry, root permition needed to add user"
exit
fi
read -p "please input a user name for project: " USER_NAME
pre_install() {
# python will be compiled while install pyhton with pyenv, we need pre install packages depended following:
yum install git gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel -y && \
id ${USER_NAME:-null} &>/dev/null
if [ $? -ne 0 ];then
useradd ${USER_NAME} && \
echo "${USER_NAME}" | passwd ${USER_NAME} --stdin
fi
return 0
}
pyenv_install() {
cd /home/${USER_NAME} && \
sudo -u ${USER_NAME} git clone https://github.com/pyenv/pyenv.git .pyenv && \
sudo -u ${USER_NAME} git clone https://github.com/pyenv/pyenv-virtualenv.git .pyenv/plugins/pyenv-virtualenv && \
sudo -u ${USER_NAME} git clone https://github.com/pyenv/pyenv-update.git .pyenv/plugins/pyenv-update && \
sudo -u ${USER_NAME} git clone https://github.com/pyenv/pyenv-which-ext.git .pyenv/plugins/pyenv-which-ext
if [ $? -eq 0 ];then
echo "OK"
else
echo "failed" ; exit
fi
echo "export PATH=\"/home/${USER_NAME}/.pyenv/bin:\$PATH\"" >> /home/${USER_NAME}/.bash_profile && \
echo 'eval "$(pyenv init -)"' >> /home/${USER_NAME}/.bash_profile && \
echo 'eval "$(pyenv virtualenv-init -)"' >> /home/${USER_NAME}/.bash_profile && \
#source ~/.bash_profile
echo -e "You can change to home of ${USER_NAME} and run the command following to test istallation:\n\nwhich pyenv\n
the initial passwd is same to user name: ${USER_NAME}, please change it immediately!"
}
main() {
pre_install
if [ $? -ne 0 ];then
echo "pre install failed";exit
fi
pyenv_install
}
main
本文連結:https://www.cnblogs.com/shichangming/p/10229272.html