我设法使用Import-PSSession
来创建PowerShell命令(模块,SnapIns等)的代理。它似乎工作正常,但避免名称冲突的语法并不自然。
我有一个包含cmdlet Do-Stuff
的第三方PowerShell SnapIn。 SnapIn安装在本地,也安装在远程计算机A
和B
上。
是否有可能以某种方式将这些SnapIns作为(命名良好的)模块导入,以便我可以在本地或Do-Stuff
或A
调用B
?
我目前使用前缀的内容:
Do-Stuff #Locally
Do-OnAStuff #Invoke on A
Do-OnBStuff #Invoke on B
或者,允许clobbering避免不自然(在我看来)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