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

PowerShell脚本输出至Discord时Out-String参数错误求助

解决PowerShell中Out-String的位置参数错误

错误原因

这个错误是因为Out-String收到了不兼容的位置参数,常见触发场景:

  • 换行用的反引号(`)后面意外附带了数组类型内容,被当成位置参数传入
  • $summaries的输出被错误识别为Out-String的参数,而非管道输入
  • 错误省略了Out-String的参数名称,导致参数解析混乱

修复方案

1. 修正换行与参数写法

如果是为了换行拆分代码,要确保Out-String的参数必须带参数名,且反引号后无多余内容:

# 带参数的正确换行写法
content = $summaries | Out-String `
    -Width 150  # 仅当需要自定义宽度时添加,参数名不能省略

如果不需要额外参数,直接简化为:

content = $summaries | Out-String

2. 确保管道输入正常传递

如果$summaries是复杂对象数组,先通过ForEach-Object统一处理,避免对象被误解析为参数:

content = $summaries | ForEach-Object { $_ } | Out-String

3. 替代方案:直接拼接字符串

如果只需要将数组元素转为换行分隔的字符串,用-join更高效:

content = $summaries -join "`n"

验证

执行修复后的代码,检查$content是否正确生成字符串内容,再传入Discord请求即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 23:50:19