【问题标题】:Clickable hyperlink on PowerShell's console outputPowerShell 控制台输出中的可点击超链接
【发布时间】:2016-03-29 19:09:42
【问题描述】:

我在使用以下 PowerShell 脚本时遇到了一些问题,您能帮我解决一下吗?

我想要完成的是在 PowerShell 的控制台输出中创建一个可点击的超链接。类似的东西:

$testOutPut = "http://something.com"
Write-Host $OutputConvertedIntoHYPERLINK

期望的控制台响应在哪里:

clickable link to external app

 http://something.com

我的目标是在 TFS 2015 的构建控制台上显示此可点击信息。

【问题讨论】:

  • 我怀疑这是可能的。

标签: powershell powershell-remoting


【解决方案1】:

你不能这样做,但你可以用特定的 URL 打开 Internet Explorer:

$InternetExplorer=new-object -com internetexplorer.application
$InternetExplorer.navigate2("http://stackoverflow.com")
$InternetExplorer.visible=$true

【讨论】:

  • 用更好的浏览器可以做到吗?
  • @mbomb007 是的。要使用默认浏览器,请使用“start www.google.com”。
【解决方案2】:

当引用 PowerShell 控制台窗口时,本身不支持可点击链接。 虽然 PowerShell 控制台可以捕获鼠标点击等,但控制台内的交互(使用它显示的文本输出)无法直接处理您想要的超文本引用。

由于这是不可行的,另一种选择是写入 HTML 文件,然后在浏览器中启动该 HTML 文件。另一个考虑因素:实现类似 PrimalForms 的东西,它添加了 Windows 风格设计的功能,为您提供可点击的链接。

【讨论】:

  • 非常感谢。我已经看到了这些选项,但它们对我的问题没有用。
  • 听起来你应该问一个新问题,描述你想要完成的事情。按照您描述的方式,您要求做的事情是不可能的。
【解决方案3】:

您可以使用启动进程命令打开 chrome 或 FF 到特定页面

Start-Process "chrome.exe" "https://www.google.com"

因此您可以在此基础上构建并在控制台中执行类似的操作:

Do {
    Write-Host "Open Google?" -ForegroundColor Yellow
    $result = Read-Host "   ( y / n ) " 
}Until ($result -eq "y" -or $result -eq "n")
if($result -eq "y"){
    Start-Process "chrome.exe" "https://www.google.com"
}

【讨论】:

    猜你喜欢
    • 2018-12-13
    • 2020-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    相关资源
    最近更新 更多