如何从在invoke命令外部定义的映射中传递变量值,以及如何在invoke命令之后使用

维沙尔

我正在Powershell中编写脚本,在该脚本中,在系统上用用户1登录后,它将切换到用户2,然后与此用户建立数据库连接。但是,dbinstance详细信息,invoke命令中要传递的端口号和计算机名称将被定义为第二个invoke命令之前的映射,即何时它将以第二个用户(db用户)打开命令以打开Powershell。在这种情况下,它可以采用userid,即何时与第二个用户调用Powershell连接,但是它不能将dbinstance和port的值传递给下一个sqlcmd调用。以下是供参考的代码。在此代码中,获取时可以正常工作$inputMap.UserNameP,但是无法通过$inputMap.DBInstance,$inputMap.PortNo

$UserName =  'User1' 
$securekey = @'
securekey1
'@ |ConvertTo-SecureString -AsPlainText -Force;
$concreds=New-Object System.Management.Automation.PSCredential -ArgumentList $UserName, $securekey;
Invoke-Command -Credential $concreds -ComputerName 'abc.domainname'-Authentication Credssp -ScriptBlock {
function checkFaultHighUtilization() {
$local:ExecStdOperatorOut=Invoke-Command -ScriptBlock {
$inputMap=@{"UserNameP"="User2";"DBInstance"="databaseinstancename";"PortNo"="portnumber";};
$securekey1 = "securekey1"
$finalresult = @()
$securekey2 = $securekey1 | ConvertTo-SecureString -AsPlainText -Force;
$concreds=New-Object System.Management.Automation.PSCredential -ArgumentList $inputMap.UserNameP, $securekey2;
Invoke-Command -Credential $concreds -ComputerName 'computername' -Authentication Credssp  -ScriptBlock {
$var1=Invoke-Sqlcmd  -query "
Begin
select  * from db
End" -ServerInstance "$inputMap.DBInstance,$inputMap.PortNo"
##if (($var1.count) -gt 0) {
foreach($row in $var1){
$finalresult+=$row.a+':'+$row.b+':'+$row.c
echo $finalresult
}
}
}
$local:ExecStdOperatorRet=if($local:ExecStdOperatorOut) {0} else {1}
return $local:ExecStdOperatorRet,$local:ExecStdOperatorOut;
};
$ESExecReturn,$ESExecOutput=checkFaultHighUtilization
$ESExecOutput=($ESExecOutput | Out-String).Trim();
Write-output "ESExecOutput:";
Write-output $ESExecOutput;
Write-output ":ESExecOutput";Write-output $("ESExecError:" + $Error + ":ESExecError");
Write-output $("ESExecReturn:" + $ESExecReturn + ":ESExecReturn");
}
阿列克谢·塞梅诺夫(Alexey Semenov)
$scriptBlockOne = {
    $variableA = "Hello World"
    return $variableA
}

$scriptBlockTwo = {
    param (
        $inputString
    )
    Write-host $inputString
}

$invokeCommandReturn = Invoke-Command -ScriptBlock $scriptBlockOne
Invoke-Command -ScriptBlock $scriptBlockTwo -ArgumentList $invokeCommandReturn

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在PHP数组中传递变量值

来自分类Dev

如何在URL中传递变量值?

来自分类Dev

如何在shell脚本中使用双引号传递变量值

来自分类Dev

如何在MySQL中输入bash命令的变量值?

来自分类Dev

如何在重命名命令中增加变量值

来自分类Dev

如何在重命名命令中增加变量值

来自分类Dev

如何从模板Angular中的循环传递变量值?

来自分类Dev

如何在JavaScript中的不同HTML页面之间传递变量值

来自分类Dev

如何在python的exec_command中传递变量值?

来自分类Dev

如何在Azure中的两个Yaml管道之间传递变量值

来自分类Dev

如何在shell脚本中的for循环中传递变量值

来自分类Dev

如何在python中的shell命令中使用变量值?

来自分类Dev

如何在SQL * Plus ACCEPT命令中按照提示使用绑定变量值

来自分类Dev

如何在fromJSON命令中的url中传递变量

来自分类Dev

如何在ssh命令中传递变量的值

来自分类Dev

Qt:如何使用registerField()在QWizardPages之间传递变量值

来自分类Dev

如何在Invoke-Command -ArgumentList中通过引用传递变量

来自分类Dev

如何在终端命令中的python中分配变量值?

来自分类Dev

如何在Shell脚本中提供从变量值到命令的参数?

来自分类Dev

使用echo命令输出变量值

来自分类Dev

使用argparse,如何解析命令行参数以指定变量值?

来自分类Dev

如何使用 argparse 或 sys avrg 在命令行中设置变量值

来自分类Dev

如何在casperjs中将变量值传递给sendKeys

来自分类Dev

如何在FreeMarker函数中传递分配变量值

来自分类Dev

如何在C中将变量值传递给数组

来自分类Dev

如何在json文件中传递bash变量值

来自分类Dev

如何在C#中使用标识符和变量值映射值

来自分类Dev

Android AsyncTask传递变量值

来自分类Dev

在crontab中传递变量值

Related 相关文章

  1. 1

    如何在PHP数组中传递变量值

  2. 2

    如何在URL中传递变量值?

  3. 3

    如何在shell脚本中使用双引号传递变量值

  4. 4

    如何在MySQL中输入bash命令的变量值?

  5. 5

    如何在重命名命令中增加变量值

  6. 6

    如何在重命名命令中增加变量值

  7. 7

    如何从模板Angular中的循环传递变量值?

  8. 8

    如何在JavaScript中的不同HTML页面之间传递变量值

  9. 9

    如何在python的exec_command中传递变量值?

  10. 10

    如何在Azure中的两个Yaml管道之间传递变量值

  11. 11

    如何在shell脚本中的for循环中传递变量值

  12. 12

    如何在python中的shell命令中使用变量值?

  13. 13

    如何在SQL * Plus ACCEPT命令中按照提示使用绑定变量值

  14. 14

    如何在fromJSON命令中的url中传递变量

  15. 15

    如何在ssh命令中传递变量的值

  16. 16

    Qt:如何使用registerField()在QWizardPages之间传递变量值

  17. 17

    如何在Invoke-Command -ArgumentList中通过引用传递变量

  18. 18

    如何在终端命令中的python中分配变量值?

  19. 19

    如何在Shell脚本中提供从变量值到命令的参数?

  20. 20

    使用echo命令输出变量值

  21. 21

    使用argparse,如何解析命令行参数以指定变量值?

  22. 22

    如何使用 argparse 或 sys avrg 在命令行中设置变量值

  23. 23

    如何在casperjs中将变量值传递给sendKeys

  24. 24

    如何在FreeMarker函数中传递分配变量值

  25. 25

    如何在C中将变量值传递给数组

  26. 26

    如何在json文件中传递bash变量值

  27. 27

    如何在C#中使用标识符和变量值映射值

  28. 28

    Android AsyncTask传递变量值

  29. 29

    在crontab中传递变量值

热门标签

归档