找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 18723|回复: 2

[问题求助] 跪求高手解答PowerShell传参至new-PSSession

[复制链接]
发表于 2016-5-29 12:38:15 | 显示全部楼层 |阅读模式

  1. function Connect_RemoteMachine ($username,$pwd,$ip_remote)
  2. {
  3.     $pwd=ConvertTo-SecureString $pwd -AsPlainText -Force
  4.     $cred=New-Object System.Management.Automation.PSCredential($username,$pwd)


  5.     $s=new-PSSession -ComputerName $ip_remote -Credential $cred
  6.     if($s -gt $null)
  7.     {
  8.         return $s
  9.     }
  10. }


  11. function reset-comupter
  12. {      
  13.      
  14.       
  15.        $a=1
  16.        $session = Connect_RemoteMachine "administrator"  "11111111" localhost
  17.        Invoke-Command  -Session $session -ScriptBlock {
  18.       
  19.         
  20.         $b=2
  21.         $c=$a+$b
  22.         Write-Output $c
  23.                     
  24.         
  25.         }-ArgumentList $a,$b,$c
  26.         Remove-PSSession $session;
  27.       
  28. }
  29. reset-comupter
复制代码
在以上代码中,$a无法在新的session中被调用,如果我想在新session中调用之前定义好的变量,应该怎么做呢?

评分

参与人数 1PB -2 收起 理由
pcl_test -2 勿发笼统无意义的标题

查看全部评分

发表于 2016-5-29 16:13:42 | 显示全部楼层
  1. $a = 1
  2. Invoke-Command -Session $session -ScriptBlock { param($n);$c=2+$n;Write-Output $c } -Args $a
复制代码
 楼主| 发表于 2016-5-30 09:25:35 | 显示全部楼层
谢谢,通过你的指点,我搞定了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 23:52 , Processed in 0.020478 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表