我有一个脚本,可以使用PowerShell从Azure存储中下载blob:
ForEach ($blob in $topBlobs) {
Write-Output "Downloading $blob.Name..."
Get-AzureStorageBlobContent -Blob $blob.Name `
-Container $ContainerName `
-Destination $officeFolder `
-Context $ctx -ErrorAction SilentlyContinue -Confirm:$false
Write-Output "Done."
}
无论怎样,我怎么强迫它回答NO?如果我现在从命令行(Windows上的.cmd文件)运行它,它会要求确认!
答案 0 :(得分:1)
默认情况下,-Confirm
开关设置为false,因此您省略它。由于现有文件,您可能会看到确认对话框。您可以通过添加-force
开关来绕过它。
好的,因为你不想覆盖文件,你可以这样做:
$existingFiles = Get-childitem $officeFolder | Select-Object -ExpandProperty Name
ForEach ($blob in ($topBlobs | Where-Object Name -NotIn $existingFiles)) {
Write-Output "Downloading $blob.Name..."
Get-AzureStorageBlobContent -Blob $blob.Name `
-Container $ContainerName `
-Destination $officeFolder `
-Context $ctx
Write-Output "Done."
}
答案 1 :(得分:0)
您正在寻找确认标志here
它默认为false,但你可能会混淆它