3

我安装了 PowerShell v2.0,最重要的是,安装了 PSCX。PSCX 是 PowerShell 社区扩展 ( http://pscx.codeplex.com/Wikipage )。

似乎我安装了两个名为 Start-Process 的 cmdlet,我猜一个是原始的,另一个来自 PSCX。当我调用 Start-Process 时,会运行 PSCX cmdlet。如何让 PowerShell 改为运行原始版本?

有用的证据:

当我跑步时,get-help start-process我得到:

Name                              Category  Synopsis
----                              --------  --------
Start-Process                     Cmdlet    PSCX Cmdlet: Starts a new process.
Start-Process                     Cmdlet    Starts one or more processes on the local computer.

当我跑步时,get-command start-process我得到:

CommandType     Name                                                          Definition
-----------     ----                                                          ----------
Cmdlet          Start-Process                                                 Start-Process [[-Path] <String>] [[-Arguments] <String>] [...
4

2 回答 2

4

如果您获取基于模块的版本(PSCX 2.0 Beta),您可以选择不导入 Pscx.Deprecated 模块,该模块包含与内置 PowerShell cmdlet 冲突的三个 PSCX cmdlet:Start-Process、Select-Xml 和 Get -随机的。请注意,PSCX 2.0 Beta 是一个 xcopy 部署,您只需执行以下操作:

  1. 下载 Pscx-2.0-Beta2.zip
  2. 在 Windows 资源管理器中打开其属性,然后按位于“常规”选项卡上的“取消阻止”。这是必需的,否则在导入模块时会出现很多错误。
  3. 将文件(保留文件夹结构)提取到 ~\WindowsPowerShell\Modules
  4. 导入模块 Pscx

就是这样。如果您需要在 Windows 资源管理器中重新启用“在此处打开 PowerShell”上下文菜单条目,请运行命令Enable-OpenPowerShellHere.

于 2010-04-01T16:21:22.493 回答
3

我设置了这些别名:

new-alias start-pscxprocess pscx\start-process 
new-alias start-msprocess microsoft.powershell.management\start-process  
于 2010-04-01T15:48:29.117 回答