实际上,我正在尝试使用自定义脚本执行来创建Azure Runbook。该运行手册针对Linux VM运行。 我构建了一个简单的脚本,该脚本在VM上创建目录。如果我是第一次执行Runbook,那么目录将立即创建。然后,我删除目录,再次运行Runbook,并且不再创建目录。 在互联网上进行了一些研究之后,我发现了一个提示,即您只能在虚拟机上运行具有相同参数的脚本。所以我在我的SettingString中添加了一个时间戳。 不幸的是,这不能解决问题,或者我的代码有错误。
希望您能帮助我找到错误或提示我,如何对同一个VM多次执行脚本。
非常感谢!
$ timestamp =(获取日期)。提示
写入输出$ timestamp
$ SettingsString ='{“ timestamp”:“ $ timestamp”,“ fileUris”:[“ myURI”],“ commandToExecute”:“ sh myscript.sh”}“;
$ ProtectedSettingsString ='{“ storageAccountName”:“ xxx”,“ storageAccountKey”:“ xxx”}'
Set-AzureRmVMExtension -ResourceGroupName“ xxx”-位置“ xxx” -VMName“ xxx”-名称“ xxx”-发布者“ Microsoft.OSTCExtensions” -ExtensionType“ CustomScriptForLinux” -TypeHandlerVersion 1.5 -SettingString $ SettingsString -ProtectedSettingString $ ProtectedSettingsString < / p>
答案 0 :(得分:0)
您可以将Set-AzVMExtension
与-ForceRerun
参数一起使用,以实现此目的,每次都需要传递不同的字符串。
https://docs.microsoft.com/en-us/powershell/module/az.compute/set-azvmextension?view=azps-1.3.0