当前位置: 首页 > article >正文

macport 多版本php快速切换自定义命令pvm shell脚本

macportz中安装的多个版本的php的快速切换shell脚本, 为了偷懒少敲几个命令而做的这个shell脚本。 把这个加入到 ~/.zshrc文件后可以用非常简短的命令快速对多个php版本进行切换和管理。

pvm.sh代码:

#!/bin/sh
# macport安装的多PHP版本管理工具,用于快速却换当前环境中的默认PHP版本。
# 使用方法 sh pms.sh -v 版本号
# 使用帮助 sh pms.sh -h
# @author tekintian@gmail.com
# @link http://dev.tekin.cn
# 
# 注意:建议在使用本脚本时先在 ~/.bash_profile文件中增加环境变量输出配置, 配置项目如下:
# 放入~/.bash_profile时注意去除 #

# 当前已经安装的PHP版本数组获取
php_vers=$(/opt/local/bin/port select --list php|awk 'NR>=3{print $1}' |gsed 's/php//g')

# 脚本帮助信息
help () {
  echo "PHP版本却换帮助:"
  # echo "使用方法:sh $0 参数 如:sh $0 -v 8.2 "
  echo "使用方法:~/pvm.sh 参数 如:~/pvm.sh -v 8.2 "
  echo "-h  显示此帮助"
  echo "-l  列出当前系统中已经安装的PHP版本"
  echo "-v 8.2  将当前系统中的默认PHP版本设置为8.2"
  echo "-d  重置为8.2版本 这里后面不需要加版本号"
  echo "注意版本号不需要输入小版本,且必须先安装"
  exit 1
}
# 显示当前已经安装的PHP版本
# 如:版本号:82  安装路径:/opt/local/bin/php82
show_php_vers(){
	for v in $php_vers;do
		echo "版本号:${v}  安装路径: /opt/local/bin/php${v}"
	done
  echo "详细信息见目录 /opt/local/var/macports/software 中php开头的软件包"
	exit 1
}

# 获取用户输入
while getopts ":v:dhl" opt
do
    case $opt in
        v)
          DEFAULT_PHP_VER=$OPTARG;;
        d)
          DEFAULT_PHP_VER="82";;
        l)
          show_php_vers;;
        h)
          help;;
        ?)
        echo "Unknown parameter"
        exit 1;;
    esac
done

# 未输入参数时显示帮助信息
if [ -z ${DEFAULT_PHP_VER} ];then
  help
fi

# 获取用户输入的DEFAULT_PHP_VER参数,默认 8.2
DEFAULT_PHP_VER=${DEFAULT_PHP_VER:-"82"}

# 判断版本中是否包含.
if [[ "${DEFAULT_PHP_VER}" =~ "." ]]; then
  # 去除默认版本中的. 如将 8.2 替换为 82
  DEFAULT_PHP_VER=`echo ${DEFAULT_PHP_VER}|sed 's/\.//g'`
fi


# 判断版本是否存在, 路径如 /opt/local/bin/php82
if [ -f "/opt/local/bin/php${DEFAULT_PHP_VER}" ]; then
  # 执行port select  php版本却换
  sudo port select --set php "php${DEFAULT_PHP_VER}"
  echo "php版本却换成功! 当前默认php版本为:php${DEFAULT_PHP_VER}"
else
  echo "你输入的版本 ${DEFAULT_PHP_VER} 不存在!\n"
  echo "请确认你已经通过 sudo port install php${DEFAULT_PHP_VER} 安装过!"
  exit 1
fi

pvm命令别名设置

将上面的代码保存为 pvm.sh  保存到合适的地方,然后在~/.zshrc文件里面增加一个自定义别名 pvm

alias pvm="~/pms.sh "

生效  source ~/.zshrc

pvm自定义命令使用:

显示当前已安装的PHP版本列表:  pvm -l

切换当前PHP版本为 8.2版本:  pvm -v 8.2


http://www.kler.cn/news/368202.html

相关文章:

  • <<机器学习实战>>15-26节笔记:逻辑回归参数估计、梯度下降及优化、模型评价指标
  • spring final修饰
  • 【轻量级聊天应用】Vocechat本地服务器部署结合cpolar异地即时通讯
  • Mysql 数据库架构
  • Linux 进程间通信_匿名管道
  • 若依部署上线遇到的问题
  • java平方根计算 C语言指针变量
  • Mercury:一款网络元数据捕捉与安全分析工具
  • 计算机网络——有连接传输层协议TCP
  • 如何使用Qlik Sense Util
  • 使用 Cursor 和 Devbox 快速开发并上线 Gin 项目
  • ifftshift函数
  • 缓存放置文章调研
  • 二十二、Python基础语法(模块)
  • 通过企业架构蓝图(EA Blueprint)构建企业数字化转型之路
  • STM32 HAL 陶晶池串口屏使用
  • GEE引擎传奇UI界面修改教程
  • MybatisPlus入门(一)MybatisPlus简介
  • Java三大特性之一—— 封装
  • 【力扣】[Java版] 刷题笔记-94.二叉树的中序遍历
  • 四期书生大模型实战营(【入门岛】- 第4关 | 玩转HF/魔搭/魔乐社区)
  • Sql执行较慢的排查方式
  • 带你用Go实现二维码小游戏(上)
  • 10.23Python_Matplotlib_‘backend_interagg‘ has no attribute
  • smartctl硬盘检查工具
  • docker入门(三)自定义部署docker镜