为了将所有命令行操作迁移到PowerShell,我想避免使用旧式命令控制台。 但是,Visual Studio命令提示符具有各种环境variables和默认命令提示符下找不到的path设置。 我怎样才能用这些相同的设置创build一个“Visual Studio PowerShell”?
例如,您可以使用此脚本导入Visual Studio命令提示符环境,请参阅脚本文档注释中的示例,例如Visual Studio 2010:
Invoke-Environment '"%VS100COMNTOOLS%\vsvars32.bat"'
在PowerShell会话的开始(从配置文件或手动)开始完成之后,您可以在PowerShell会话中获得所需的信息。
或者你可以在这个答案中使用Keith Hill提供的解决方案。
看看PowerConsole
PowerConsole已被纳入NuGet http://nuget.codeplex.com/ 。 你可以在Visual Studio和一个包管理系统中获得PowerShell。
我所做的是创建一个简单的cmd批处理命令脚本,如下所示:
call "%VS80COMNTOOLS%vsvars32.bat" powershell
然后我创建一个通过cmd调用这个快捷方式。 快捷方式目标如下所示:
%windir%\System32\cmd.exe /k "SetupPSBuildEnvironment.cmd"
如果您希望控制台看起来像PowerShell控制台,只需在快捷方式属性中修改您的喜好布局。
我使用这个脚本,我称之为Initialize-VisualStudio.ps1,我在我的配置文件中用点源来调用它,以设置需要它的环境变量,在我的实际会话中:
param([switch]$ArquitectureX86) if($ArquitectureX86) { $arq= "x86"} else { $arq="x64"} pushd 'c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC' cmd /c "vcvarsall.bat $arq&set" | foreach { if ($_ -match "=") { $v = $_.split("="); set-item -force -path "ENV:\$($v[0])" -value "$($v[1])"; } } popd