20.change-release-version.bash 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. set -e
  2. # export versionSuffix='.1234.preview'
  3. # bash 20.change-release-version.bash
  4. #---------------------------------------------------------------------
  5. #(x.1)参数
  6. args_="
  7. export versionSuffix=''
  8. # "
  9. #----------------------------------------------
  10. #(x.2)当前路径
  11. curPath=$PWD
  12. cd $curPath/../../..
  13. export basePath=$PWD
  14. cd $curPath
  15. #----------------------------------------------
  16. echo "(x.3)get version"
  17. export version=`grep '<Version>' $(grep '<pack>\|<publish>' ${basePath} -r --include *.csproj -l | head -n 1) | grep -oP '>(.*)<' | tr -d '<>'`
  18. echo "version: $version"
  19. export releaseVersion="${version%%-*}$versionSuffix"
  20. echo "releaseVersion: $releaseVersion"
  21. #----------------------------------------------
  22. if [ -n "$versionSuffix" ]; then
  23. echo "(x.4) change release version from [$version] to [$releaseVersion]"
  24. cd $basePath
  25. sed -i 's/$version/'"$releaseVersion"'/g' `grep -a '<publish>' . -rl --include *.csproj`
  26. fi
  27. #----------------------------------------------
  28. #(x.9)
  29. cd $curPath