关于脚本PowerShell的设计实例

这几天对ps情有独忠,被它的强大功能所希引,它可以快速部署,快速发布,将一些连带的动作一次的完成,挺方便,类似于早期的bat文件,也像linux平台的bash脚本,但功能上,比前两者都要强很多,下面我们看一下将某个解决方案下的所有项目一次publish的过程,我们使用ps脚本来实现的。

# 作者:仓储大叔# 功能:发布项目到指定的地方Param([string] $rootPath)$scriptPath = Split-Path $script:MyInvocation.MyCommand.PathWrite-Host "Current script directory is $scriptPath" -ForegroundColor Yellowif ([string]::IsNullOrEmpty($rootPath)) {    $rootPath = "$scriptPath.."}Write-Host "Root path used is $rootPath" -ForegroundColor Yellow$projectPaths =     @{Path="$rootPathsrcLindCore.Manager";Prj="LindCore.Manager.csproj";Name="web"},    @{Path="$rootPathsrcLindCore.Test";Prj="LindCore.Test.csproj";Name="console"} $projectPaths | foreach {    $projectPath = $_.Path    $projectFile = $_.Prj    $name=$_.Name    # $outPath = $_.Path + "objpublish"$outPath = "d:publish"+$name$projectPathAndFile = "$projectPath$projectFile"Write-Host "Deleting old publish files in $outPath" -ForegroundColor Yellow    remove-item -path $outPath -Force -Recurse -ErrorAction SilentlyContinue    Write-Host "Publishing $projectPath to $outPath" -ForegroundColor Yellow    dotnet restore $projectPathAndFile    dotnet build $projectPath    dotnet publish $projectPath -o $outPath}

登录后复制

注意:如果你只是把跨平台项目发到objpublish文件夹的话,那wwwroot这些文件夹不会生成,而如果发到其它磁盘,将会生成这些静态的文件,这点要注意!

跨平台项目,需要在project.json里把运行时都加上,否则你的项目保能在当前平台运行

  "runtimes": {"win7-x64": {},"linux-x64": {},"osx-x64": {}  },

登录后复制

感谢各位对.net core的支持!

以上就是关于脚本PowerShell的设计实例的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2440677.html

(0)
上一篇 2025年3月3日 12:32:09
下一篇 2025年2月19日 08:14:05

AD推荐 黄金广告位招租... 更多推荐

相关推荐

发表回复

登录后才能评论