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

PowerShell中如何将docker命令(如docker ps)的输出存入变量

PowerShell中将Docker命令输出存入变量的正确方案

你之前写法的问题在于Receive-Output不是捕获外部命令输出的标准用法,额外拼接该管道命令会导致赋值失败。

基础用法

普通场景下直接对变量赋值即可,无需额外管道处理:

# 将docker ps的输出直接存入变量
$var = docker ps
# 打印变量验证结果
Write-Output $var

此时如果docker ps返回多行结果,$var默认是字符串数组,每个元素对应输出的一行内容。

特殊场景适配

  • 如需将所有输出合并为单个完整字符串,可搭配Out-String使用:
    $var = docker ps | Out-String
    
  • 如需同时捕获命令的标准输出和错误输出(比如执行异常时的报错信息也存入变量),可添加输出重定向:
    $var = docker ps 2>&1
    
  • 如需获取结构化输出方便后续逻辑处理,可使用Docker原生的JSON输出格式配合PowerShell解析:
    $var = docker ps --format '{{json .}}' | ConvertFrom-Json
    
    此时$var为结构化对象,可直接通过.Names、.Image等属性获取对应容器的信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 09:42:03