PowerShell 启动应用程序【转】

当你在PowerShell中,启动带参数启动可执行应用程序时,可能会碰到参数解析的错误。最好的方式是使用命令 Start-Process,该命令有两个优点:

  • 程序的路径和程序参数分开,可以使用-FilePath 和 -ArgumentList单独传递。这样就可以在闭合的引号中安全地传递参数了。
  • 支持在新窗口和当前窗口启动程序:-NoNewWindow
  • 支持在当前进程和新进程启动程序:-Wait
PS E:\> Start-Process -FilePath Ping.exe -ArgumentList "www.pstips.net -n 3" -NoNewWindow
PS E:\>
正在 Ping www.pstips.net [108.171.203.52] 具有 32 字节的数据:
请求超时。
请求超时。
请求超时。

108.171.203.52 的 Ping 统计信息:
    数据包: 已发送 = 3,已接收 = 0,丢失 = 3 (100% 丢失),

PS E:\> Start-Process -FilePath Ping.exe -ArgumentList "www.pstips.net -n 3" -NoNewWindow
PS E:\>
正在 Ping www.pstips.net [108.171.203.52] 具有 32 字节的数据:
请求超时。
请求超时。
请求超时。

108.171.203.52 的 Ping 统计信息:
    数据包: 已发送 = 3,已接收 = 0,丢失 = 3 (100% 丢失),

Start-Process -FilePath notepad -ArgumentList "$env:windir\system32\drivers\etc\hosts"

原文链接:http://www.pstips.net/powershell-launching-applications.html

posted @ 2013-07-20 17:01  stu_acer  阅读(...)  评论(...编辑  收藏