মাইক্রোসফ্ট অ্যাজুরি: একটি ব্লব ধারকটিতে কীভাবে সাব ডিরেক্টরি তৈরি করবেন


97

কিভাবে একটি ব্লব ধারক মধ্যে একটি উপ ডিরেক্টরি তৈরি করতে

উদাহরণ স্বরূপ,

আমার ব্লব ধারকটিতে http://veda.blob.core.windows.net/docament/

আমি যদি কিছু ফাইল সঞ্চয় করি তবে তা হবে

http://veda.blob.core.windows.net/docament/1.txt

http://veda.blob.core.windows.net/docament/2.txt

এখন, কিভাবে একটি উপ ডিরেক্টরি তৈরি করতে হয়

http://veda.blob.core.windows.net/docament/folder/

যাতে আমি ফাইলগুলি সঞ্চয় করতে পারি

http://veda.blob.core.windows.net/docament/folder/1.txt

উত্তর:


138

এগন যা বলেছিলেন তাতে যুক্ত করতে কেবল "ফোল্ডার / 1.txt" নামে আপনার ব্লব তৈরি করুন এবং এটি কার্যকর হবে। ডিরেক্টরি তৈরি করার দরকার নেই।


4
কীভাবে আপনি "ফোল্ডার" থেকে এই সমস্ত ফাইল ফিল্টার করবেন বা পাবেন?
afr0

4
এটি আমার পক্ষে কাজ করে না, বলে কনটেইনাররা ছোট হাত, হাইফেন, সংখ্যা ছাড়া কিছুই ব্যবহার করতে পারে না। ফাইলের
নামগুলির

@ গ্রীন_কাউই আপনাকে আপনার ধারক / ডিরেক্টরিগুলির নামকরণের জন্য কেবল ছোট হাতের অক্ষর এবং সংখ্যা ব্যবহার করতে হবে এবং এজন্য আপনি ত্রুটি পেয়েছেন।
সপন গাফুরী

4
এটি একই ফোল্ডারের সাহায্যে বেশ কয়েকটি ডিরেক্টরি তৈরি করে, মানে প্রতিবার আমি ফাইল আপলোড করি, এটি আবার "ফোল্ডার" নামে একটি ডিরেক্টরি তৈরি করে, ফোল্ডারটি বিদ্যমান না তাই এটি পরীক্ষা করা উচিত কিনা তা পরীক্ষা করার কোনও পদ্ধতি আছে?
amal50

@ সাপানঘাফুরি এটি সত্য নয়, আপনি বড় হাতের অক্ষর সম্বলিত ডিরেক্টরি তৈরি করতে পারেন
কোডা

36

পাত্রে কেবলমাত্র একক স্তর রয়েছে। আপনি কার্যত স্তরযুক্ত স্টোরেজগুলির মতো একটি "ফাইল-সিস্টেম" তৈরি করতে পারেন তবে বাস্তবে সবকিছু 1 স্তরে থাকবে, এটি যে ধারক সেটিতে রয়েছে।

স্টোরেজের মতো ভার্চুয়াল "ফাইল-সিস্টেম" তৈরির জন্য, আপনার ব্লব নাম থাকতে পারে যার মধ্যে একটি '/' থাকে যাতে আপনি যেভাবে সঞ্চয় করেন তার সাথে আপনি যা খুশি করতে পারেন। এছাড়াও, দুর্দান্ত জিনিসটি হ'ল আপনি একটি '/' অবধি আংশিক স্ট্রিং দিয়ে ভার্চুয়াল স্তরে কোনও ব্লব অনুসন্ধান করতে পারেন।

এই 2 টি জিনিস, একটি '/' যুক্ত করে একটি পাথ এবং আংশিক স্ট্রিং অনুসন্ধানের জন্য, একসাথে একটি ভার্চুয়াল "ফাইল-সিস্টেম" সঞ্চয়স্থান তৈরি করে।


আপনি কি সি # নমুনা ভাগ করতে পারেন? নামটি কেবলমাত্র সম্পত্তি হিসাবে পঠিত তাই আমরা একটি ব্লব তৈরি করতে সক্ষম হই না "" / "দিয়ে নাম
এবিবি

34

ফোল্ডারে কীভাবে ফিল্টার করবেন জিজ্ঞাসা করে @ আফার0 এর একটি মন্তব্য রয়েছে ..

GetDirectoryReferenceপাত্রে ব্লবগুলি ব্যবহার করে এবং লুপিংয়ের দুটি উপায় রয়েছে এবং প্রকারটি পরীক্ষা করা যায়। নীচের কোডটি সি # তে রয়েছে

CloudBlobContainer container = blobClient.GetContainerReference("photos");

//Method 1. grab a folder reference directly from the container
CloudBlobDirectory folder = container.GetDirectoryReference("directoryName");

//Method 2. Loop over container and grab folders.
foreach (IListBlobItem item in container.ListBlobs(null, false))
{
    if (item.GetType() == typeof(CloudBlobDirectory))
    {
        // we know this is a sub directory now
        CloudBlobDirectory subFolder = (CloudBlobDirectory)item;

        Console.WriteLine("Directory: {0}", subFolder.Uri);
    }
}

আরও গভীরতার কভারেজের জন্য এটি পড়ুন: http://www.codeproject.com/Articles/297052/Azure-Storage-Blobs-S सर्विस-Working-with- Directori


4
এটি আজকের তারিখ হিসাবে উত্তর হওয়া উচিত। +1
মিকিডি

4
এটি ভাল তথ্য তবে এটি কীভাবে 'একটি ব্লব পাত্রে সাব ডিরেক্টরি তৈরি করবেন' এর উত্তর দেয়?
কোডাহ

20

ফাইল আপলোড করার সময় আজুর পোর্টালে আমাদের নীচের বিকল্প রয়েছে:

এখানে চিত্র বর্ণনা লিখুন


6

আপনি যদি মাইক্রোসফ্ট অ্যাজুরি স্টোরেজ এক্সপ্লোরার ব্যবহার করেন তবে একটি "নতুন ফোল্ডার" বোতাম রয়েছে যা আপনাকে একটি ধারকটিতে একটি ফোল্ডার তৈরি করতে দেয়। এটি আসলে একটি ভার্চুয়াল ফোল্ডার:

এখানে চিত্র বর্ণনা লিখুন


5

আপনাকে সাব ডিরেক্টরি তৈরি করার দরকার নেই। শুধু ফোঁটা ধারক এবং পরিবর্তনশীল মত ব্যবহার ফাইল নাম তৈরি ফাইলের নাম কোড নিচে হিসাবে:

string filename = "document/tech/user-guide.pdf";
CloudStorageAccount cloudStorageAccount = CloudStorageAccount.Parse(ConnectionString);
CloudBlockBlob blob = cloudBlobContainer.GetBlockBlobReference(filename);
blob.StreamWriteSizeInBytes = 20 * 1024;
blob.UploadFromStream(fileStream); // fileStream is System.IO.Stream

2

@ পূর্বের উপরে উল্লিখিত হিসাবে, বিএলওবি স্টোরেজে কোনও আসল ফোল্ডার পরিচালনা নেই।

আপনি ফাইলের নামে '/' ব্যবহার করে কোনও ফাইল সিস্টেমের কয়েকটি বৈশিষ্ট্য অর্জন করতে পারেন তবে এর অনেকগুলি সীমাবদ্ধতা রয়েছে (উদাহরণস্বরূপ, যদি আপনাকে "ফোল্ডার" নামকরণের প্রয়োজন হয় তবে কী হবে?)

একটি সাধারণ নিয়ম হিসাবে, আমি আমার ফাইলগুলি একটি পাত্রে যথাসম্ভব সমতল রাখব এবং শেষ অ্যাপ্লিকেশনগুলির কাছে আমি যে কাঠামোটি প্রকাশ করতে চাইব তা প্রয়োগ করতে আমার অ্যাপ্লিকেশনটি পরিচালনা করতে হবে (উদাহরণস্বরূপ আমার ডাটাবেসে নেস্টেড ফোল্ডার কাঠামো পরিচালনা করুন , প্রতিটিটির জন্য একটি রেকর্ড থাকতে হবে) ফাইল, ধারক-নাম এবং ফাইল-নাম ব্যবহার করে বিএলওবি রেফারেন্স করে)।


1

অনুরূপ ইস্যু পেয়েছেন নভোনীল নমুনা চেষ্টা করার সময় প্রথম serverless-অ্যাপ
এখানে of ওয়েবের সামনের দিকে removing সরিয়ে আমি কীভাবে সমাধান করেছি তার তথ্য এখানে।

দ্রষ্টব্য: container ওয়েব ধারক স্থির ওয়েবসাইট সক্ষম করার সময় স্বয়ংক্রিয়ভাবে তৈরি হয়েছিল। কখনই Never মূল ধারকটি কোথাও দেখেনি।

//getting Invalid URI error while following tutorial as-is
az storage blob upload-batch -s . -d \$web --account-name firststgaccount01

//Remove "\" @destination param
az storage blob upload-batch -s . -d $web --account-name firststgaccount01

-2

নোড.জেএস-এ কফিস্ক্রিপ্টে আমি এটি কীভাবে করব তা এখানে:

blobService.createBlockBlobFromText 'containerName', (path + '$$$.$$$'), '', (err, result)->
    if err
        console.log 'failed to create path', err
    else
        console.log 'created path', path, result

4
প্রশ্নটি ট্যাগ হয়েছেC#
রাফায়েল হার্সকোভিসি

@ ডেমেন্টিক তাই কফি স্ক্রিপ্ট সম্পর্কে আমার উল্লেখ, যা ক্রাফ্ট ছাড়াই কেবল জাভাস্ক্রিপ্ট। সি # তে পোর্ট করা খুব কঠিন হওয়া উচিত নয়, বিশেষত গৃহীত উত্তরের তুলনায় যা এমনকি প্রোগ্রামিং ভাষায় নয়।
সিস টিমারম্যান
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.