我想执行特定于远程PSSession的代码。也就是说,代码不适用于本地,但适用于所有远程会话。
是否存在任何环境变量,函数或cmdlet,如果我处于活动的PSSession中,则会有效地返回true;如果我在本地运行,则会返回false?
答案 0 :(得分:10)
检查$PSSenderInfo
变量是否存在。来自 about_Automatic_Variables :
$PSSenderInfo
包含有关启动PSSession的用户的信息, 包括用户身份和发起的时区 电脑。此变量仅在PSSessions中可用。
$PSSenderInfo
变量包含用户可配置的属性,ApplicationArguments
,默认情况下仅包含。{ 来自原始会话的$PSVersionTable
。要添加数据ApplicationArguments
属性,请使用ApplicationArguments
参数New-PSSessionOption
cmdlet。