PowerShell splatting 是否支持内联哈希表?

Jos*_*itt 2 powershell

我想使用 splatting 语法,但我想内联

所以而不是:

$p = @{Path = '.'}
ls @p
Run Code Online (Sandbox Code Playgroud)

我想要做

ls @@{Path = '.'}
Run Code Online (Sandbox Code Playgroud)

但这是一个语法错误。无论如何,是否可以在不必编写单独的变量的情况下生成哈希表?

我为什么要这样做?我更喜欢用于定义大量参数(例如 4 个或更多)的哈希表语法。但我宁愿不定义变量,我只想让我在哈希表定义的“顶部”调用的 cmdlet。

Fra*_*ois 5

splat 运算符将查找名称与 splat 符号后面的字符匹配的变量,它不会尝试将符号后面的字符解析为获取值的语句。你不能内联。链接到TechNet