我已经成功地Import-PSSession
用来创建 PowerShell 命令(模块、管理单元等)的代理。它似乎工作正常,但避免名称冲突的语法感觉不是很自然。
我有一个包含 cmdlet 的第 3 方 PowerShell 管理单元Do-Stuff
。管理单元安装在本地,也安装在远程计算机A
和B
.
是否可以以某种方式将这些 SnapIns 导入为(名字很好的)模块,以便我可以Do-Stuff
在本地或 on A
or上调用B
?
我目前使用的前缀:
Do-Stuff #Locally
Do-OnAStuff #Invoke on A
Do-OnBStuff #Invoke on B
或者,允许破坏以避免不自然的(在我看来)cmdlet 重命名:
SnapinName\Do-Stuff #Invoke locally. Local SnapIn clobbered
tmp_h0jcyaaq.p4f\Do-Stuff #Invoke on A. Can I control module name?
tmp_rbk2rv5y.lbb\Do-Stuff #Invoke on B.
我想做的事:
Do-Stuff #Invoke locally
OnA\Do-Stuff #Invoke on machine A
OnB\Do-Stuff #Invoke on machine B