zoukankan      html  css  js  c++  java
  • Powershell极速教程-如何在三分钟内编写项目编译脚本

    分析及思路

    来看一下项目目录结构

    image

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

    build内及其简单image

    思路很明显了:获取当前脚本所在目录=>获取上一级目录=>回到上一级(.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


    image

    最后

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

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

    image

  • 相关阅读:
    Tableau(数据抽取)
    Oracle
    Visual Studio 2015与C#6.0新特性
    .net/c# memcached 安装和基本使用
    .net/c# memcached 获取指定前缀缓存键(keys)
    【笔记】Head First 设计模式
    C# WinForm 导出导入Excel/Doc [使用Aspose.Cells.dll]
    【转】《WCF服务编程 第一章 WCF基础》第一回
    WCF 部署到IIS(最基本的配置)
    串口通信(基础)
  • 原文地址:https://www.cnblogs.com/gainorloss/p/10563371.html
Copyright © 2011-2022 走看看