我正在试着做以下简单的一句话:
Invoke-Command -ComputerName localhost -Credential Administrator { ipconfig } -InDisconnectedSession -SessionOption @{ IdleTimeout = 180000 }
但会出现以下错误:
Invoke-Command : The specified IdleTimeout session option 0 (seconds) is not
a valid period. Specify an IdleTimeout value that is greater than or equal to
the minimum allowed 60 (seconds).
At line:1 char:1
+ Invoke-Command -ComputerName localhost -Credential Administrator { ip ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Invoke-Command], PSArgumentException
+ FullyQualifiedErrorId : Argument,Microsoft.PowerShell.Commands.InvokeCommandCommand
documentation的示例16看起来非常相似,但我无法让它同样工作。
2条答案
按热度按时间oxcyiej71#
关于以下几点:
Invoke-Command -ComputerName localhost -Credential Administrator -ScriptBlock { ipconfig } -InDisconnectedSession -SessionOption (New-PSSessionOption -IdleTimeout 180000)
希望能有所帮助。
um6iljoc2#
问题是PSSessionOption对象中的所有时间值都是[TimeSpan]类型。您必须以刻度(ms*1000)为单位指定IdleTimeout值,或者使用TimeSpan类的转换方法才能从哈希表进行转换。