powershell - 使用 import-pssession 但使用 enter-pssession 时缺少对象方法
问题描述
我有一个小的 powershell 脚本可以远程运行备份软件 veeam,但生成的对象不同。
我以两种不同的方式连接:
- 导入-PSSession
$cred = Get-Credential -m "Backupserver" -UserName XY
$session = new-PSSession -ComputerName Backupserver -Credential $cred
Invoke-Command -Session $session {add-pssnapin VeeamPSSnapin}
Import-PSSession -Session $session -module VeeamPSSnapin
# but I tried the following too
Import-PSSession -Session $session -DisableNameChecking -AllowClobber
- 进入会话
$cred = Get-Credential -m "Backupserver" -UserName XY
enter-pssession -Credential $cred Backupserver
add-pssnapin VeeamPSSnapin
之后,我可以使用 Veeam Snapin,但以下内容:
Get-VBRJob -name "Backup Job BITS-SERVER" | Get-Member
给我的不是结果对象的所有方法,也不是相同的对象类型。
使用 enter-pssession 我得到:
TypeName: Veeam.Backup.Core.CBackupJob
Name MemberType Definition
---- ---------- ----------
CanRunByScheduler Method bool ISchedulableJob.CanRunByScheduler()
CheckDeleteAllowed Method void CheckDeleteAllowed()
...
使用 import-pssession 我得到了:
TypeName: Deserialized.Veeam.Backup.Core.CBackupJob
Name MemberType Definition
---- ---------- ----------
GetType Method type GetType()
ToString Method string ToString(), string ToString(string format, System.IFormatProvider formatProvider), string IFormattable.ToString(string format, ...
PSComputerName NoteProperty string PSComputerName=cpa-backup.itservice.de
...
它应该是不同类型的结果对象 (Deserialized.Veeam.Backup.Core.CBackupJob)。
但是我怎样才能远程连接(没有 enter-pssession 的非交互)以使用所有方法获取相同的对象???
提前致谢...
解决方案
由于 PowerShell 在通过网络发送给您之前会序列化这些对象,因此您最好使用Connect-VBRServer
cmdlet
Connect-VBRServer -Server "Backupserver"
Get-VBRJob -Name "Backup Job BITS-SERVER" | Get-Member
推荐阅读
- java - Maven发布插件配置及示例
- java - 如何在 swagger 模型中创建嵌套对象
- c++ - 如何让用户等待才能再次使用某个功能?
- scala - 将 Akka HTTP 重定向到 HTTPS
- haskell - 从generics-sop的ConstructorInfo中提取嵌套类型信息
- mysql - 如何正确地将 mysql-query-results 解析为 typescript 对象
- log4j - 在 ignite 默认配置文件中添加 log4j 属性后,服务无法启动
- rust - 如何为 Substrate Runtime 实现 EVM Trait?
- python - 循环遍历列表并删除python中的某些元素时索引越界
- postgresql-11 - 您如何在 Postgresql 11 的存储过程的另一部分中使用别名和引用该别名?