powershell - 如何将命令中的标准输出添加到哈希数组?
问题描述
如何将命令中的标准输出添加到哈希数组?
我想从几个命令结果构建一个 PS 自定义对象。这可以通过以下方式实现。
[hashtable]$props = @{}
$tmp = & $ImageInfo -Name $fileName
$props.Add('Name', $tmp)
$info = New-Object -TypeName psobject -Property $props
由于要添加名称成员,因此我想跳过对$tmp
变量的赋值。但我没能为此做一条线。这怎么可能?
这给出了“缺少表达式错误”:
$props.Add('Name', & $ImageInfo -Name $fileName)
解决方案
不必使用 hashtable::Add 方法。该值也可以通过赋值添加:
$props.'Name' = & $ImageInfo -Name $fileName
这将执行 $ImageInfo 中定义的命令,并且 stdout 内容获取 key 的值Name
。
推荐阅读
- android - AppCompatDelegate.setDefaultNightMode 强制关闭应用程序没有错误
- google-apps-script - WebApp URL 显示错误“您需要权限”
- ios - 如何获取 NSManagedObject 的数组
- r - 按键/值转置多列并将它们组合起来
- c++ - 如何将指向非静态成员方法的指针交给外部“C”函数?
- assembly - 使用 mips 替换字符串的特定字符
- visual-studio-code - 在 Visual Studio 代码中,如何在组合 [alt + ctrl + '] 中键绑定键 [`]?
- arrays - Dart:将 int 转换为 Uint8List
- node.js - 如何使用 TypeORM 迁移将计算数据插入数据库?
- c++ - 我怎么能把这个硬代码变成 C++ 中的 while 循环?