代码之家  ›  专栏  ›  技术社区  ›  Niniki

如何在管道上的cmdlet之间传递公共powershell命令行参数?

  •  2
  • Niniki  · 技术社区  · 15 年前

    假设我有两个cmdlet,“new foo”和“do bar”。这两个cmdlet都需要对服务进行身份验证才能执行其操作,而“do bar”则接受一个foo。今天,我可以:

    new-foo -host localhost -username user -password password -whateverOtherArgs
    

    我可以做到:

    do-bar -host localhost -username user -password password -foo myFoo
    

    我甚至可以通过管道将它们串起来,例如:

    new-foo <blah blah> | do-bar -host localhost -username user -password password
    

    但是我不知道如何传递公共参数,比如服务位置和管道元素之间的凭证。如果我先把我的证书用链子锁起来的话,那我就先把这些证书放在一起。

    我错过了什么,似乎这应该是显而易见的。。。

    3 回复  |  直到 15 年前
        1
  •  1
  •   Keith Hill    15 年前

    您可以让newfoo抛出一个对象,该对象既包含dobar感兴趣的原始对象,也包含服务位置和作为属性的凭证。接受此对象作为参数,然后提取出所需的数据 如果 用户未提供ServiceLocation或凭据参数。

        2
  •  0
  •   rerun    15 年前

    Get-Credential 你需要的掩护。

        3
  •  0
  •   jamesdeath123    11 年前

    您是在开发这个cmdlet,还是只是在脚本中使用它们?

    推荐文章