问题标签 [cmdlet]
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 - PowerShell 使用 GetEventLog CmdLet 出错
我正在尝试运行 PowerShell 脚本并尝试按消息过滤。
我正在尝试使用以下参数运行脚本:
无法验证参数“消息”上的参数。参数为 null 或空。提供一个不为 null 或空的参数,然后再次尝试该命令。+ CategoryInfo : InvalidData: (:) [Get-EventLog], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationError,Microsoft.PowerShell.Commands.GetEventLogCommand
由于某种原因,它可以很好地处理 $server 参数,但如果抱怨 $message 变量。
我怎样才能解决这个问题?
c# - 如何知道以编程方式传递给 cmdlet 的所有参数?
我在 .net 中实现了客户 cmdlet。我想知道用户传递给它的所有参数。
基本上我想知道用户以编程方式使用参数 foo、bar、foobar 执行了这个 cmdlet。
看起来在脚本中我们可以使用: $PSBoundParameters.ContainsKey('WhatIf')
我需要.net(c#)中的等价物
powershell - 将 powershell 管道类型更改为哈希表(或任何其他可枚举类型)
我喜欢编写一个执行以下任务的 cmdlet“Convert-ToHashTable”:
Import-csv 在管道上放置一个数组,如何在我的 Convert-ToHashTable cmdlet 中将其更改为哈希表?在 cmdlet 的 Process 部分中,我可以访问元素,但我不知道如何更改管道本身的类型
Process { Write-Verbose "Process $($myinvocation.mycommand)" $CurrentInput = $_ ... }
有没有办法将完整的哈希表作为新管道返回或创建一个具有哈希表类型的新管道?
powershell - Powershell 自定义 Cmdlet - 在后台线程中调用 WriteObject
无法从后台线程调用 WriteObject 方法!
是否有可能在 powershell 的主线程中调用/调度此方法(如在 WPF 中)?
代码示例:
编辑:
任何解决方案、解决方法或快速修复?
谢谢,马蒂亚斯
c# - 是否可以在 c# 中的 Powershell cmdlet 之间共享属性和注释?
在 Powershell cmdlet 中公开一组相关函数时,是否可以共享属性名称和摘要帮助以在程序集中跨 cmdlet 规范这些函数?
我知道这可以通过派生类来完成,但是当有多个具有不同属性的 cmdlet 要共享时,这个解决方案充其量是尴尬的。
这是一个非常简单的例子。我想共享属性“名称”和所有相关注释,以便它们在我们生成的 N 个 cmdlet 中是相同的,但我想不出在 c# 中执行此操作的好方法。理想情况下,任何共享都将允许指定参数属性,例如强制或位置。
powershell - 从 CSV PowerShell 中删除一行
我目前有以下 csv
虽然我希望我可以简单地更改创建 csv 的过程以删除不可能的破折号线。
破折号线始终是第 2 行,我可以使用 powershell 删除第 2 行数据吗?
额外的问题,我希望在底部添加一个空行,然后是一段文字。我猜我可以使用 add-content cmdlet,但我不完全确定如何使用。
powershell - 从资源管理器菜单获取文件夹路径到 powershell 变量
是否可以从 powershell 打开资源管理器窗口并将资源管理器中选择的路径存储到变量中?
从 powershell 打开资源管理器窗口
PS C:> 资源管理器
c# - 在 PowerShell cmdlet 中导航父子关系
假设我有这样的父子关系的对象:
现在,我想创建一个支持如下语法的 cmdlet:
在这里,Parent 属性需要以某种方式引用管道中的另一个对象。在 PowerShell 中甚至可能发生这样的事情吗?如果没有,有什么替代方案?
[编辑]如果我像这样使用上面的类:
然后加载模块并尝试以下命令:
我收到此错误:
我希望 Parent 属性能够像真正的 Node 对象一样引用管道中的另一个对象。
[编辑] 此错误是由类定义中缺少 public 关键字引起的。添加关键字解决了问题并使示例工作。
sql-server - osql vs Invoke-Sqlcmd--重定向后者的输出
我们正在从调用 osql 的批处理文件转移到使用 Invoke-Sqlcmd cmdlet 的 Powershell 脚本。
有谁知道在后一种情况下将输出重定向到在 osql 中使用 -o 标志的等效步骤是什么?我们有一些后处理步骤来查看 osql 输出文件并采取相应措施(如果这些日志大于 X 字节,则报告错误)。如果 Invoke-Sqlcmd 可以在输入相同的 SQL 命令的情况下复制相同的输出信息,我将非常喜欢它。
现在在我的脚本中,我打算调用Invoke-Sqlcmd <...> | Out-file -filepath myLog.log
. 有谁知道这是否可行或有意义?
security - 使用 powershell Set-GPPermissions cmdlet 设置 GPO 安全过滤器
根据微软的说法,cmdlet Set-GPPermissions接受选项“-replace”:
“这确保了现有的权限级别被新的权限级别所取代。”
我从 PowerShell 导入 GPO。之后我想设置安全过滤器。导入后,在设置安全过滤器之前,GPO的安全过滤为“Authenticated Users”。现在我想删除该过滤器选项并将其替换为“myGroup”。为此,我使用以下命令:
结果是添加了一个引用“myGroup”的新安全过滤器,但组“Authenticated Users”并未被删除。Powershell cmdlet 不是在替换过滤器,而是在添加它。
提示?
提前致谢!