# 作者:仓储大叔 # 功能:发布项目到指定的地方 param([string] $rootpath) $scriptpath = split-path $script:myinvocation.mycommand.path write-host current script directory is $scriptpath -foregroundcolor yellowif ([string]::isnullorempty($rootpath)) { $rootpath = $scriptpath\..} write-host root path used is $rootpath -foregroundcolor yellow $projectpaths = @{path=$rootpath\src\lindcore.manager;prj=lindcore.manager.csproj;name=web}, @{path=$rootpath\src\lindcore.test;prj=lindcore.test.csproj;name=console} $projectpaths | foreach { $projectpath = $_.path $projectfile = $_.prj $name=$_.name # $outpath = $_.path + \obj\publish$outpath = d:\publish\+$name$projectpathandfile = $projectpath\$projectfilewrite-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 }
注意:如果你只是把跨平台项目发到obj\publish文件夹的话,那wwwroot这些文件夹不会生成,而如果发到其它磁盘,将会生成这些静态的文件,这点要注意!
跨平台项目,需要在project.json里把运行时都加上,否则你的项目保能在当前平台运行
runtimes: {win7-x64: {},linux-x64: {},osx-x64: {} },
感谢各位对.net core的支持!
以上就是关于脚本powershell的设计实例的详细内容。