问题标签 [psobject]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - How can you use GetType().GetProperties() on a PowerShell Custom PSObject?
I am trying to get this log4net customization to work with PowerShell PSObjects. Basically, this pattern layout will iterate over the object and dump its properties into CSV columns. Here is the code that does the reflection:
This works fine when using a normal class in C#. It also works if I create a class using inline C# in PowerShell like this.
What doesn't work is if I create a custom PSObject. If I replace the $code with a PSCustom object such as
Then it will just return Null. I have verified that this does in fact return null.
I suppose I could hack up CSVLogging Pattern layout and make a special case if the inbound object is a PSObject, but I'd rather not have to customize it for just one type of object. Is there a way in PowerShell to take a psobject and covert/cast it into something that I can use with GetType().GetProperties()?
c# - 测试 PSObject 是否源自 WriteObject() WriteWarning() WriteError()
堆,
你如何区分 PSObjects 是由 WriteObject() WriteWarning() WriteError() 创建的?
从此开始:
该results
变量包含从命令行输出的所有 PSObject。您如何通过命令行开关识别由 WriteObject() WriteError() WriteWarning() 创建的 PSObject?
我想添加实现以下目标的代码:
c# - C# Powershell 管道输出/响应
目前我正在开发 ac# web 服务,它是一个“中间人”。客户端可以调用方法“executeScript(字符串脚本)”,我的 Web 服务调用该脚本。
目前,Web 服务不知道客户端将执行哪些脚本(通常交换脚本)。我如何正确读取输出?例如获取流程或其他东西。
我的错误阅读工作已经完成。示例脚本:“获取邮箱 xxxxx”
logger.Info(o.ToString()); -> 获取邮箱 xxxx
属性:“名称:长度,值:19,成员类型:属性”
那不是正确的输出。有没有办法将响应作为字符串作为原始 powershell 控制台中的字符串?(动态地在每个脚本上!)
events - 是否可以将事件附加到 PSObject?
假设我有一个这样的 psobject:
是否可以附加一个事件,以便在 value 属性更改时执行方法 Sqrt() ?IE :
会产生
更新
根据@Richard 的回答,这是有效的配方:
string - 如何评估 PSObjects 上的字符串?
我对对象的概念仍然很陌生,无法理解这一点:
好的,看来我显然不能在 PSCustomObject System.Object 上使用 -match 运算符。因为两个对象中都存在字符串“blah”。
所以如果我尝试:
然后它起作用了!所以呢?我是否需要将任何 PSCustomObject System.Object 转换为 Object System.Array 才能使用“-match”等运算符?
当然,必须有一种直接从 PSCustomObject System.Object 直接执行此操作的快速且直接的方法,不是吗?
我要做的就是解析 2 PSCustomObject System.Object 并检查第一个的值是否以某种方式存在于第二个中(完全匹配、部分匹配等)
非常感谢!
string - 将 PowerShell 对象转换为字符串
我正在从 Web 服务中提取数据,并希望将对象数据转换为字符串。
我打电话使用:
然后我查询数据:
数据返回如下:
我现在如何获取该对象数据并将其转换为字符串?
powershell - PowerShell 开关不适用于连字符
我正在从 CSV 导入创建一系列新的 PSObject,然后将它们添加到 $new。我正在使用开关来尝试设置“Notes”属性的值,因为正在创建\添加对象,并且我遇到了一些'hinky'。
当我运行这个...
...它按预期工作。$import 中的所有条目都在 $new 中重新创建,并添加了我的“SubCategory”和“Notes”noteproperties(iPod 得到了烧录标签,780ti 预计被盗)。但是当我使用以下作为开关运行时......
...它将所有条目设置为交换机上的“默认”设置。我尝试使用非连字符名称为一个条目运行交换机,并为另一个条目使用连字符条目,并且仅正确设置了连字符版本。
上面的代码是从实际代码中改变的,但它正确地说明了我正在尝试做的事情。我需要添加一个基于零件编号列表的注释属性,并将使用我选择的标签填写“注释”条目。
我试过用单引号、双引号、使用 -wildcard 并用 * 替换开关连字符,并将 ` 字符放在 - 之前。似乎没有任何工作。
xml - PowerShell:具有 ConvertTo-XML 输出的自定义属性 XML 标记
我在 PowerShell 中创建一个新对象,使用哈希表来设置属性值。然后我想使用 ConvertTo-XML 方法将对象导出为 XML 格式。
XML 输出如下:
我想要的是以以下方式格式化 XML 标记:
然后,如果有一个好的解决方案,是否还有一种方法可以自定义 Object(s) 标签?
谢谢你。
powershell - 导出 csv 格式。电源外壳
让我们首先说我是 Powershell 的新手,而不是使用它的代码和脚本但尝试学习的最棒的人。现在问题来了!
我正在编写一个从网络中的计算机获取信息的脚本。我有一些代码非常适合我的目的。但是当涉及到一些信息时我遇到了一些问题,主要是包含多个对象的信息,比如服务。
当我导出 csv 文件时,它看起来像这样:
TYPE System.Management.Automation.PSCustomObject
“服务”
“系统。对象 []”
所以它不会获取 service.caption (因为太多了?)。但是如果我用输出文件 C:\Users\devices.txt 替换 export-csv C:\Users\device.csv 它看起来像这样:
{Adobe Acrobat 更新服务、Adobe Flash Player 更新服务、Andrea ADI 过滤器服务、应用程序体验...}
所以它开始看起来更好了,但并没有得到所有(仍然是因为有太多的服务?)。我想用这个导出/输出文件做的是让信息垂直而不是水平显示。
(想要的结果)
Adobe Acrobat 服务
Adobe Flash Player 更新服务
等等..
而不是:(实际结果)
Adobe Acrobat 更新服务、Adobe Flash Player 更新服务等...
有没有办法使这成为可能,已经尝试了一段时间并且无法将我的大脑包裹起来。
任何帮助表示赞赏!
properties - PowerShell本地磁盘属性无输出
我正在为磁盘构建报告,但需要帮助,请。这是代码:
一切都很好,但变量 used2 中没有