Azure でストレージ アカウントを作成し、コンテナーを作成しました。サーバーに保存されているファイルをアップロードしようとしていますが、ファイルは 800 フォルダー内に保存されています。この Powershell スクリプトでこれを実行しようとしましたが、サブフォルダーでは機能しません。
$LocalFolder = "\\Server\Data"
Add-AzureAccount
# Set a default Azure subscription.
Select-AzureSubscription -SubscriptionName 'nameofsubscription' –Default
$Key = Get-AzureStorageKey -StorageAccountName mydatastorename
$Context = New-AzureStorageContext -StorageAccountKey $Key.Primary -StorageAccountName mydatastorename
foreach ($folder in Get-ChildItem $LocalFolder)
{
ls –Recurse –Path $LocalFolder |Set-AzureStorageBlobContent -Container nameofcontainer -Context $Context -BlobType Block
}
$LocalFolder を「\Server\Data\subfolders001」に設定すると、subfolder001 内のファイルがコンテナーにアップロードされます。しかし、「\Server\Data」として保持すると機能しません。
スクリプトで、その中のすべてのサブフォルダーとファイルをストレージ コンテナーにアップロードする必要があります。
実行時に得られる出力を追加しました
エラー メッセージは表示されませんが、サブフォルダーごとに 1 つの警告メッセージが表示されます
WARNING: Can not upload the directory '\\Server\Data\subfolders001' to azure. If you want to upload directory, please use "ls -File -Recurse | Set-AzureStorageBlobContent -Container containerName".
その後、しばらく待ってから通知が発生し、powershell スクリプトを停止する必要があります。