[英]Variable assignment inside AWS ssm does not work
我正在嘗試在 AWS SSM 上運行以下命令:
Parameters = @{
commands = @(
"Write-Host userid is $userID password $($password)"
'$userID2 = $userID'
'$password2 = $password'
"Write-Host userid is $userID2 password $($password2)"
)
}
第一個 Write-Host 語句打印 $userID 和 $password 的正確值,但在分配新變量后,第二個Write-Host
變量對兩個變量都打印為空。 難道我做錯了什么? 我也嘗試用雙引號獲取$userID
和$password
的值,但沒有運氣。
對於任何面臨同樣問題的人。 問題是在將命令發送到 EC2 之前,AWS 將用所有變量值替換命令,因此,我們不能直接重用命令中的變量。 這是我必須想出的解決方法:
$userID = 'testuser1'
$password = 'testpassword'
$userIdString = "`$userID2 = '$userID'"
$passwordString = "`$password2 = '$password'"
Parameters = @{
commands = @(
"Write-Host userid is $userID password $($password)"
"$userIdString"
"$passwordString"
"Write-Host userid is $userID2 password $($password2)"
)
}
現在它打印$userID2
和$password2
罰款。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.