我一直在尝试使用powershell在Azure的vm列表中创建一个文件夹。
在虚拟机中我可以使用下面的工作
File foo.py (for module foo) not found
但是我尝试过一些东西,但它无法识别AzureVm路径。
我尝试了类似
的内容$c = Get-Credential -Credential domain\AdminUser
$Comp = Get-Content C:\temp\list.txt
$s = $ExecutionContext.InvokeCommand.NewScriptBlock("mkdir c:\Whatyousaying")
Invoke-Command -ComputerName $Comp -ScriptBlock $s -Credential $c
我遗漏了一些明显的东西,我认为DNS没有找到服务器,所以我尝试使用公共IP名称和地址,但是它们因winRM错误而失败,但这在Azure中有效。我已经使用已启用的Enable-PSRemoting进行了检查。
提前致谢
答案 0 :(得分:1)
您是对的,为Azure VM创建一个文件夹,您可以使用# link dependencies
TARGET_LINK_LIBRARIES(TGT1
"$<$<BOOL:${DOWNSTREAM_PIPELINE}>:${IMPORTED_LIBS_FOR_TGT1}>")
TARGET_LINK_LIBRARIES(TGT2
"$<$<BOOL:${DOWNSTREAM_PIPELINE}>:${IMPORTED_LIBS_FOR_TGT2}>" $<TARGET_FILE:TGT1>)
。
关于启用Azure VM winrm,您应该将端口 5985 添加到Azure NSG 入站规则,并将端口5985添加到 Windows防火墙入站规则。
您可以使用此脚本创建会话:
Winrm
关于创建新文件夹,您可以使用$username = 'user'
$pass = ConvertTo-SecureString -string 'password' -AsPlainText -Force
$cred = New-Object -typename System.Management.Automation.PSCredential -argumentlist $username, $pass
$s = New-PSSession -ConnectionUri 'http://xx.xx.xx.xx:5985' -Credential $cred -SessionOption (New-PSSessionOption -SkipCACheck -SkipCNCheck -SkipRevocationCheck)
创建它:
invoke-command
此外,您还需要过滤Azure VM&#39; Azure PowerShell的公共IP地址。
这里a similar case关于你,通过Winrm来运行powershell命令,请参考它。