【问题标题】:Default Powershell Console Shortcut meaning默认 Powershell 控制台快捷方式含义
【发布时间】:2016-02-17 20:24:07
【问题描述】:

我安装了 Visual Studio 2013。它在

位置创建了一个名为“PowerShell Console”的 Windows 菜单项

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft Team Foundation Server 2013 Power Tools

此快捷方式包含以下目标:

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -PSConsoleFile "C:\Program Files (x86)\Microsoft Team Foundation Server 2013 Power Tools\tfshell.psc1" -noexit -command ". 'C:\Program Files (x86)\Microsoft Team Foundation Server 2013 Power Tools\TFSS

纯文本:

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -PSConsoleFile "C:\Program Files (x86)\Microsoft Team Foundation Server 2013 Power Tools\tfshell.psc1" -noexit -command ".' C:\Program Files (x86)\Microsoft Team Foundation Server 2013 Power Tools\TFSS

我不明白关于它的三件事。

a) 它在黑色命令窗口中打开,而不是在新的蓝色 powershell 屏幕中打开。但是,如果我删除 -command.. 之前的所有内容,则会在蓝屏中打开。这是为什么呢?

b) 我理解 -command 的意思是在启动 powershell 后执行命令。但接下来是什么,“。C:....还有一条路径,我无法理解它。

c) 我什至在它提供的路径中都没有文件夹 TFSS。

这是由于安装错误造成的吗?我在安装时没有收到任何错误。

【问题讨论】:

  • TFSS 大概是一个脚本? . 告诉 powershell 运行(点源)该脚本。我假设跳过了正常的 powershell 会话初始化(这是设置蓝色的原因)。
  • "我没有 TFSS 文件夹" - 你确定吗?不只是隐藏?
  • 当我复制它时,我也会得到一个黑色窗口。可能是 v1.0。 -command ". 'path'" 如果不是文件夹,则可以正常工作,即 path 是可执行文件的路径。所以,再一次,你确定文件 tfss 不只是隐藏的吗?对不存在的路径运行命令会导致错误消息

标签: powershell visual-studio-2013


【解决方案1】:

a) -PSConsoleFile "C:\Program Files (x86)\Microsoft Team Foundation Server 2013 Power Tools\tfshell.psc1" 加载不同的控制台文件。

来自this question

PSC1 文件是“PowerShell 控制台文件”。它们是 XML 配置 告诉 PowerShell 自动加载哪些管理单元的文件。这 其他方法是调用 Import-Module 或 Add-PSSnapin 你的 Profile.ps1 脚本。

b/c) 正如@Default 所指出的,命令. $path 仅对powershell 文件有效(它适用于可执行文件但它会运行它),并用于“点源它”。

(要完整,它需要:the name of a cmdlet, function, script file, or operable program,因为错误消息告诉我们使用文件夹路径运行它时)

来自SS64

当脚本在当前范围内是 Dot-Sourced 时,任何函数, 脚本创建的别名和变量在 当前范围。

此命令应该允许您从 powershell 文件中预加载有用的功能...

...因此它似乎坏了。你能告诉我们你的计算机上的 Get-Item C:\Program Files (x86)\Microsoft Team Foundation Server 2013 Power Tools\TFSS 输出吗?

最后,我真的相信这个快捷方式目标已被删除:您至少错过了一个单引号(用于关闭路径字符串)和一个双引号(用于关闭命令字符串)以使其有效。那么您介意再次检查快捷方式的目标吗?

最后但并非最不重要的一点是,单击快捷方式并告诉我们您看到了什么:)。

PS : 如果你只需要一个 PS 控制台,只需在你的开始菜单或 cmd 中输入powershell 但我敢打赌你已经知道了^_^

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-30
    • 1970-01-01
    • 1970-01-01
    • 2011-04-01
    • 2014-05-12
    • 2016-08-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多