По моему опыту, я думаю, что вы не можете скопировать предельное количество сущностей из хранилища таблиц Azure просто с помощью AzCopy.
Однако вы можете попробовать использовать PowerShell с модулем Azure для этого. Вот мои шаги и пример кода, к которому вы можете обратиться.
Чтобы запустить PowerShell от имени администратора для установки модуля Azure с помощью команды Install-Module -Name Az -AllowClobber -Scope CurrentUser
, к которой можно обратиться к официальному документу Install the Azure PowerShell module
, чтобы узнать подробности.
Следуйте разделу Sign in to Azure
официального руководства Perform Azure Table storage operations with Azure PowerShell
, чтобы войти в Azure с помощью своей учетной записи в PowerShell.
Вот мой пример кода, который вы можете попробовать запустить на локальном компьютере после выполнения шага 2.
$storageAccountName = "<your storage account name>"
$resourceGroup = "<the resource group name of your storage>"
$location = "<the location of your storage>"
$storageAccount = Get-AzStorageAccount -Name $storageAccountName -ResourceGroupName $resourceGroup
$ctx = $storageAccount.Context
$tableName = "<your table name>"
$cloudTable = (Get-AzStorageTable –Name $tableName –Context $ctx).CloudTable
$i = 0 ; $n = 1000 ; Get-AzTableRow -table $cloudTable | ForEach-Object {ConvertTo-Json $_; $i++; If($i -eq $n) {break}} > results-1000.json
Содержимое результата выглядит как показано ниже.
{
"ProductName": "AAAAAAA",
"PartitionKey": "A",
"RowKey": "1",
"TableTimestamp": "\/Date(1542619135228)\/"
}
{
"ProductName": "BBBBBBB",
"PartitionKey": "B",
"RowKey": "2",
"TableTimestamp": "\/Date(1542619145997)\/"
}
Надеюсь, это поможет.