【问题标题】:Does PowerShell splatting support inline hashtable?PowerShell splatting 是否支持内联哈希表?
【发布时间】:2016-09-09 23:17:30
【问题描述】:

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

所以而不是:

$p = @{Path = '.'}
ls @p

我想做

ls @@{Path = '.'}

但这是一个语法错误。 有没有办法不用写一个单独的变量就可以生成一个哈希表?

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

【问题讨论】:

标签: powershell


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    正如弗朗索瓦所提到的,这还不可能,但是,关于在 GitHub 上的 PowerShell RFC 存储库中添加扩展的 splatting 功能(特别包括此功能)正在进行一些讨论:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-29
      • 2014-10-07
      相关资源
      最近更新 更多