フォルダ全体を空のストレージにアップロードしたいと思います。 私が使用してファイルをアップロードすることができます知っている:フォルダをAzureストレージにアップロードする方法
blobReference.UploadFromFile(fileName);
をしかし、フォルダ全体を(再帰的に)アップロードする方法を見つけることができませんでした。 このような方法はありますか?あるいは、サンプルコードですか?
ありがとう
フォルダ全体を空のストレージにアップロードしたいと思います。 私が使用してファイルをアップロードすることができます知っている:フォルダをAzureストレージにアップロードする方法
blobReference.UploadFromFile(fileName);
をしかし、フォルダ全体を(再帰的に)アップロードする方法を見つけることができませんでした。 このような方法はありますか?あるいは、サンプルコードですか?
ありがとう
フォルダ構造が単純にファイル名の一部になります
string myfolder = "datadir";
string myfilename = "mydatafile";
string fileName = String.Format("{0}/{1}.csv", myfolder, myfilename);
CloudBlockBlob blob = container.GetBlockBlobReference(fileName);
あなたはこの例のようにアップロードした場合ファイルは 'datadir'フォルダのコンテナに表示されます。あなたがアップロードするディレクトリ構造をコピーするためにこれを使用することができることを意味
:
foreach (string file in Directory.EnumerateFiles(path, "*.*", SearchOption.AllDirectories)) {
// file would look like "C:\dir1\dir2\blah.txt"
// Don't know if this is the prettiest way, but it will work:
string cloudfilename = file.Substring(3).Replace('\\', '/');
// get the blob reference and push the file contents to it:
CloudBlockBlob blob = container.GetBlockBlobReference(cloudfileName);
blob.UploadFromFile(file);
}
コマンドラインには、1回の呼び出しで複数のファイルを一括アップロードするオプションがありません。しかし、あなたは見つけるか、例えば、このような複数のファイルをアップロードするためのループを使用することができ、次のいずれか
#!/bin/bash
export AZURE_STORAGE_ACCOUNT='your_account'
export AZURE_STORAGE_ACCESS_KEY='your_access_key'
export container_name='name_of_the_container_to_create'
export source_folder=~/path_to_local_file_to_upload/*
echo "Creating the container..."
azure storage container create $container_name
for f in $source_folder
do
echo "Uploading $f file..."
azure storage blob upload $f $container_name $(basename $f)
cat $f
done
echo "Listing the blobs..."
azure storage blob list $container_name
echo "Done"
あなたは、高性能、拡張性と信頼性でブロブディレクトリの転送はサポートMicrosoft Azure Storage DataMovement Libraryを試すことができます。さらに、転送中に取り消しと再開をサポートします。 Hereは、Azure Blob Storageにフォルダをアップロードするサンプルです。
私はこのような方法はないと思います。紺色の上に平らな階層があり、すべてがコンテナ内の塊であるからです。各ファイルを繰り返し処理してアップロードする必要があります。 – Sajal
これは当てはまりませんが、Azureはブロブコンテナ内のサブフォルダをサポートしています。 – Simon
'Azureはブロブコンテナ内のサブフォルダをサポートしています。 ' - そうではありません。サブフォルダは単にBLOBの名前のプレフィックスです。 Azure Blob Storageに空のサブフォルダを作成することはできません。 –