You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell 7.1.4中Get-Command终端正常但脚本内无法识别pandoc

问题根因

该问题和Get-Command、pandoc本身的可用性完全无关,是你编辑/复制脚本时不小心混入了无效特殊字符导致的语法错误:
从你贴出的调整后脚本可以看到try {这一行末尾多了不属于代码的特殊字符─╯,这是oh-my-posh渲染终端提示符的边界字符,你复制代码时把它一起粘贴到了脚本文件里。PowerShell执行脚本时会将这串特殊字符识别为待执行的命令,触发CommandNotFoundException进入catch块,而你最初的catch块只打印找不到pandoc的提示,才造成了「Get-Command识别不到pandoc」的误导。

解决方案

打开你的mkdocs.ps1脚本,定位到VerifyPandocExists函数内try {所在的行,删除行尾所有多余的空格以及特殊字符─╯,保证try {之后直接换行、无多余字符即可正常执行。

如果后续遇到类似无厘头的命令找不到错误,可以先排查脚本是否混入了复制粘贴带入的特殊字符,也可以用下方命令提前校验脚本语法是否合法:

$scriptPath = "你的脚本文件绝对路径"
$parseErrors = $null
[void][System.Management.Automation.Language.Parser]::ParseFile((Resolve-Path $scriptPath).Path, [ref]$null, [ref]$parseErrors)
$parseErrors

执行后如果有输出,就可以直接定位到脚本内语法错误的具体位置和原因。


内容的提问来源于stack exchange,提问作者jaime

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 18:03:02