欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Powershell极速教程-如何在三分钟内编写项目编译脚本

程序员文章站 2022-06-28 20:52:40
分析及思路 来看一下项目目录结构 炒鸡正常的三板斧src+docs+tests。咦,怎么会多出一个build的文件夹呢,这就是我们今天要研究的目录。今天我会带着大家在五分钟之内编写一个极简的编译脚本。 build内及其简单 思路很明显了:获取当前脚本所在目录=>获取上一级目录=>回到上一级(.sln ......

分析及思路

来看一下项目目录结构

Powershell极速教程-如何在三分钟内编写项目编译脚本

炒鸡正常的三板斧src+docs+tests。咦,怎么会多出一个build的文件夹呢,这就是我们今天要研究的目录。今天我会带着大家在五分钟之内编写一个极简的编译脚本。

build内及其简单Powershell极速教程-如何在三分钟内编写项目编译脚本

思路很明显了:获取当前脚本所在目录=>获取上一级目录=>回到上一级(.sln所在目录)=>执行dotnet publish –c release

第一分钟:了解基本的变量

1.$psscriptroot:当前脚本文件所在目录,从powershell3.0开始,有一个新的自动变量叫$psscriptroot,这个变量以前只存在模块里,它能指向当前文件夹中的脚本的位置(准确的说在你运行脚本的时候它才有用)

2.变量定义:$代表var,$workspace={$workspace} 定义一个变量

第二分钟:路径变换的基本操作

1.split-path –parent {$path}

2.join-path {$path1} {$path2}

3.cd {$path}进入某目录

第三分钟:编写脚本

1.获取当前脚本所在目录,为方便查看,有些变量我们可以向控制台输出一下:

echo $psscriptroot

2.获取上一级目录,我们可以定义它为我们的工作目录:

$workspace=split-path –parent $psscriptroot

3.回到上一级(.sln所在目录)

cd $workspace

4.执行dotnet publish –c release

dotnet publish –c release

最终脚本如下:

echo $psscriptroot

 

$workspace=split-path -parent $psscriptroot

 

echo $workspace

 

cd $workspace

 

echo "releasing project..."

 

dotnet publish -c release


最后

powershell 作为一种脚本语言,他可能比多数脚本语言都要强大。作为windows的日常使用者,了解并使用它,一定会让我们日常的工作事半功倍!

最后贴出 自动打包类库并发布到nuget.org的例子给大家参考一下: