问题标签 [parameter-splatting]

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.

0 投票
2 回答
218 浏览

powershell - Powershell splatting:在哈希表中传递 ErrorAction = Ignore

这是一个列出在命令行上传递的目录/文件的脚本——是否递归:

现在这不起作用,因为忽略被解释为文字。传递 ErrorAction 的规范方法是什么?

我看到"Ignore"和(在 PS7 中){ Ignore }都作为值工作,但似乎都没有对我的用例产生影响(在 Linux 下创建的文件名错误,无论 ErrorAction 如何都会停止 PS5,但根本不会打扰 PS7)。所以我什至不确定这个参数有什么影响。

0 投票
1 回答
71 浏览

powershell - 用于 PowerShell 的 Intellisense 在 vscode 中飞溅?

我的理解是,喷射变量是在 PowerShell 脚本中进行更长的函数调用的首选/推荐方式。但是,我使用 vscode 作为我的主要 IDE,可以理解的是,将参数提取到哈希表中并将它们喷出会使智能感知无法使用。

是否有任何用于 splatting 的库/框架/vscode 扩展允许通过命名约定或类似的方式使用智能感知?

0 投票
2 回答
447 浏览

json - 使用从 JSON 配置文件中读取的值进行参数喷溅

使用 Splatting Hashtable 设置参数并且效果很好。我传递给一个函数New-ADUser @param,在 splatting 中设置的值将在 Active Directory 中创建。但是,我的脚本将在其他地方运行。Json 文件将由用户操作。

我如何New-ADUser @param将 Json 文件而不是 Splatting table 传递给此函数。

谢谢你的帮助。

0 投票
0 回答
59 浏览

powershell - PowerShell - 喷溅中的 NoNewLine 写入主机参数

(如果我的英语有问题,我提前道歉)你好,我对splatting不太了解,我只用过2到3次,但这次我必须用它Write-Host。我想将NoNewLine参数添加到喷溅中,如下所示:

但是控制台不允许我执行它,所以我尝试将其设置为$true,但我收到错误:Cannot convert 'System.String' to the type 'System.Management.Automation.SwitchParameter'。我能怎么做?

0 投票
0 回答
69 浏览

windows - 如何在powershell中使用函数?

我有一个函数(最初是一个 ScriptBlock),我希望能够将我的输入参数用于存储配置,但是我单独传递它们中的每一个,这很糟糕,因为我宁愿只是当我想使用运行脚本块时传递哈希图Invoke-Command -Command ${function:sb} -ArgumentList $service_host_download_11_1_1

或者

Invoke-Command -Command ${function:sb} -ArgumentList $service_host_11_1_1

但到目前为止,我一直无法做到这一点;看下面的代码,有没有办法做到这一点?

0 投票
0 回答
33 浏览

powershell - 在powershell中的变量前面使用@和$有什么区别?

我试图通过变量来理解powershell中@和$的真正含义:

当我们创建一个哈希表时

最后来这里了解一下变量前面使用@和$符号的区别

0 投票
2 回答
65 浏览

function - 如何在 Powershell 的高级功能中实现@args splatting?

考虑以下简单函数:

它工作正常:

在此处输入图像描述

现在我想让它成为一个高级函数,因为我希望它继承详细程度偏好:

但它不起作用:

在此处输入图像描述

让我抓狂的是,我无法确定$args第一个示例与第二个示例有何不同$args

我知道@args默认情况下本机飞溅不适用于高级功能 - https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_splatting?view=powershell-7.2#notes

但我希望它可以被模拟,但它也不起作用。我的问题是 - 我试图模拟它的方式有什么问题以及是否可以在不显示所有Write-Host参数的情况下修复我的代码Write-HostIfNotVerbose