擊)
PowerShell 終端超鏈接快速上手指南讓輸出的 URL 能直接點(diǎn)擊【免費(fèi)下載鏈接】PowerShellPowerShell for every system!項(xiàng)目地址: https://gitcode.com/GitHub_Trending/po/PowerShellPowerShell 內(nèi)置的 $PSStyle.FormatHyperlink() 能把命令輸出里的 URL 和路徑變成可點(diǎn)擊鏈接。本文帶你 5 分鐘跑通查版本、最小示例、寫(xiě)進(jìn)自己的腳本還能把鏈接塞進(jìn)表格和報(bào)告里。場(chǎng)景切入復(fù)制粘貼太麻煩了你在終端里跑了一條命令輸出一排依賴(lài)包的下載地址。想打開(kāi)看看只能鼠標(biāo)選中、CtrlC、切瀏覽器、CtrlV——一行鏈接就要點(diǎn)四次鼠標(biāo)。如果輸出的是 20 行鏈接呢這正是終端超鏈接要解決的鏈接直接可點(diǎn)光標(biāo)移上去還能看到完整 URL。核心功能速覽本質(zhì)就一行代碼$PSStyle.FormatHyperlink(文本, 目標(biāo)鏈接) 會(huì)返回一段 ANSI OSC 8 轉(zhuǎn)義序列現(xiàn)代終端Windows Terminal、iTerm2、VS Code 終端等渲染后就是可點(diǎn)擊的鏈接。# 生成一段帶鏈接的字符串 $PSStyle.FormatHyperlink(PowerShell 文檔, [uri]https://learn.microsoft.com/powershell)運(yùn)行后終端里顯示的文本會(huì)變成藍(lán)色可點(diǎn)擊樣式單擊直達(dá)目標(biāo)頁(yè)面。注該能力自 7.2 起內(nèi)置舊版終端如部分 Linux 老版 tmux會(huì)原樣顯示轉(zhuǎn)義字符屬正?,F(xiàn)象。PowerShell 終端窗口中查看版本信息的實(shí)際效果分步實(shí)操5.1 檢查你的 PowerShell 是否帶這個(gè)功能先確認(rèn) $PSStyle 變量里有沒(méi)有 FormatHyperlink 方法# 一行判斷當(dāng)前環(huán)境是否支持 bool預(yù)期輸出 True。如果是 False說(shuō)明你用的是 Windows PowerShell 5.1它沒(méi)有 $PSStyle需要升級(jí)到 PowerShell 7.2。5.2 最小可運(yùn)行示例兩條命令就能跑通先看效果再談?dòng)梅? 打印一個(gè)可點(diǎn)擊鏈接 Write-Host $PSStyle.FormatHyperlink(點(diǎn)我訪(fǎng)問(wèn) PowerShell, [uri]https://aka.ms/powershell)預(yù)期終端出現(xiàn)點(diǎn)我訪(fǎng)問(wèn) PowerShell字樣鼠標(biāo)懸停變指針點(diǎn)擊后瀏覽器打開(kāi)對(duì)應(yīng)頁(yè)面。5.3 把鏈接寫(xiě)進(jìn)自己的報(bào)告腳本下面這個(gè)小函數(shù)會(huì)把構(gòu)建日志里附帶的資源地址都變成可點(diǎn)擊的直接復(fù)制到你的腳本里即可function Show-ReleaseLinks { Write-Host 本次構(gòu)建的參考資源 # 每行鏈接都可點(diǎn)擊 Write-Host $PSStyle.FormatHyperlink( - 變更日志, [uri]https://aka.ms/powershell) Write-Host $PSStyle.FormatHyperlink( - 常見(jiàn)問(wèn)題, [uri]https://aka.ms/powershell) } Show-ReleaseLinks進(jìn)階玩法在表格里塞進(jìn)可點(diǎn)擊鏈接Format-Table 的列表達(dá)式里直接嵌入輸出表格每行都有一個(gè)入口$items ( [pscustomobject]{NameA; Urlhttps://aka.ms/powershell} [pscustomobject]{NameB; Urlhttps://aka.ms/powershell} ) $items | Format-Table Name, {L鏈接;E{$PSStyle.FormatHyperlink(打開(kāi),[uri]$_.Url)}}寫(xiě)個(gè)通用包裝函數(shù)全腳本復(fù)用把文本 鏈接的拼接邏輯收進(jìn)一個(gè)函數(shù)后面所有輸出只調(diào)用一次function Link-Text { param($Text, $Url) $PSStyle.FormatHyperlink($Text, [uri]$Url) } Write-Host (Link-Text 項(xiàng)目地址 https://aka.ms/powershell)避坑清單現(xiàn)象屏幕上出現(xiàn)\e]8;;https://...\e\\之類(lèi)的怪字符鏈接點(diǎn)不了。原因當(dāng)前終端不支持 ANSI OSC 8 轉(zhuǎn)義序列。解決換用 Windows Terminal、iTerm2 或 VS Code 內(nèi)置終端tmux 用戶(hù)確認(rèn)外層終端也支持再試?,F(xiàn)象報(bào) CommandNotFoundException 或 FormatHyperlink 找不到。原因正在運(yùn)行 Windows PowerShell 5.1該版本沒(méi)有 $PSStyle 變量。解決確認(rèn)啟動(dòng)的是 pwsh 7.2而不是 powershell.exe。現(xiàn)象鏈接能點(diǎn)但跳轉(zhuǎn)到了錯(cuò)誤地址。原因目標(biāo)參數(shù)傳了普通字符串且格式不規(guī)范URI 解析出偏差。解決統(tǒng)一顯式寫(xiě)成 [uri]https://... 形式避免裸字符串。延伸與資源實(shí)現(xiàn)源碼在 src/System.Management.Automation/FormatAndOutput/common/PSStyle.csFormatHyperlink 就在其中可順帶看顏色、下劃線(xiàn)等其它 ANSI 能力。變更記錄見(jiàn) CHANGELOG/7.2.mdAdd support to $PSStyle for strikethrough and hyperlinks 就是它的出生記錄。倉(cāng)庫(kù)克隆命令git clone https://gitcode.com/GitHub_Trending/po/PowerShell下一步現(xiàn)在就打開(kāi)你的 pwsh 終端輸入第一節(jié)的判斷命令看到 True 之后立刻跑 5.2 的示例——鏈接亮起的那一刻你會(huì)明白這套輸出習(xí)慣值得留在所有腳本里?!久赓M(fèi)下載鏈接】PowerShellPowerShell for every system!項(xiàng)目地址: https://gitcode.com/GitHub_Trending/po/PowerShell創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考