تحميل الملفات إلى تخزين Azure Blob باستخدام AzCopy
بمقدورك تحميل الملفات والدلائل إلى تخزين Blob باستخدام الأداة المساعدة لسطر الأوامر AzCopy v10.
لمعرفة أمثلة لأنواع أخرى من المهام مثل تنزيل النقط أو المزامنة مع تخزين Blob أو نسخ النقاط بين الحسابات، راجع الارتباطات المعروضة في قسم الخطوات التالية من هذه المقالة.
الشروع في العمل
راجع مقالة بدء استخدام AzCopy لتنزيل AzCopy والتعرف على الطرق التي يمكنك من خلالها توفير بيانات اعتماد التخويل لخدمة التخزين.
إشعار
تفترض الأمثلة الواردة في هذه المقالة أنك قدمت بيانات اعتماد التخويل باستخدام معرف Microsoft Entra.
إذا كنت تفضل استخدام رمز SAS المميز لتخويل الوصول إلى بيانات كائن ثنائي كبير الحجم، فإنه يمكنك إلحاق هذا الرمز المميز بعنوان URL للمورد في كل أمر AzCopy. على سبيل المثال: 'https://<storage-account-name>.blob.core.windows.net/<container-name><SAS-token>'
.
إنشاء حاوية
يمكنك استخدام الأمر azcopy make لإنشاء حاوية.
تلميح
يتضمن هذا المثال الوسيطات الخاصة بالمسار بعلامات اقتباس مفردة (''). استخدم علامات الاقتباس المفردة في كافة أغلفة الأوامر باستثناء shell الأوامر Windows (cmd.exe). في حالة استخدامك Windows Command Shell (cmd.exe)، فقم بإحاطة وسيطات المسار بعلامات اقتباس مزدوجة ("") بدلًا من علامات الاقتباس المفردة ('').
إعراب
azcopy make 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>'
مثال
azcopy make 'https://mystorageaccount.blob.core.windows.net/mycontainer'
مثال (نقطة نهاية Data Lake Storage)
azcopy make 'https://mystorageaccount.dfs.core.windows.net/mycontainer'
للحصول على مستندات مرجعية مفصلة، انظر نسخة.
تحميل ملف
قم بتحميل ملف باستخدام الأمر azcopy copy .
تلميح
يتضمن هذا المثال الوسيطات الخاصة بالمسار بعلامات اقتباس مفردة (''). استخدم علامات الاقتباس المفردة في كافة أغلفة الأوامر باستثناء shell الأوامر Windows (cmd.exe). في حالة استخدامك Windows Command Shell (cmd.exe)، فقم بإحاطة وسيطات المسار بعلامات اقتباس مزدوجة ("") بدلًا من علامات الاقتباس المفردة ('').
إعراب
azcopy copy '<local-file-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<blob-name>'
مثال
azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt'
مثال (نقطة نهاية Data Lake Storage)
azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myTextFile.txt'
يمكنك أيضًا تحميل ملف باستخدام رمز البدل (*) في أي مكان في مسار الملف أو اسم الملف. على سبيل المثال: 'C:\myDirectory\*.txt'
أو C:\my*\*.txt
.
تحميل دليل
حمّل دليل باستخدام الأمر azcopy copy .
ينسخ هذا المثال دليلًا (وجميع الملفات الموجودة في هذا الدليل) إلى حاوية تخزين البيانات الثنائية الكبيرة (blob). ستكون النتيجة هي دليل في الحاوية بنفس الاسم.
تلميح
يتضمن هذا المثال الوسيطات الخاصة بالمسار بعلامات اقتباس مفردة (''). استخدم علامات الاقتباس المفردة في كافة أغلفة الأوامر باستثناء shell الأوامر Windows (cmd.exe). في حالة استخدامك Windows Command Shell (cmd.exe)، فقم بإحاطة وسيطات المسار بعلامات اقتباس مزدوجة ("") بدلًا من علامات الاقتباس المفردة ('').
إعراب
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --recursive
مثال
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --recursive
مثال (نقطة نهاية Data Lake Storage)
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --recursive
للتمكن من النسخ إلى دليل داخل الحاوية، ما عليك سوى تحديد اسم هذا الدليل في سلسلة الأوامر.
مثال
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory' --recursive
مثال (نقطة نهاية Data Lake Storage)
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myBlobDirectory' --recursive
في حالة تحديد اسم دليل غير موجود في الحاوية، يقوم AzCopy بإنشاء دليل جديد بهذا الاسم.
تحميل محتويات الدليل
حمّل محتويات دليل باستخدام الأمر azcopy copy . استخدم رمز حرف البدل (*) لتحميل المحتويات بدون نسخ الدليل المحتوي نفسه.
تلميح
يتضمن هذا المثال الوسيطات الخاصة بالمسار بعلامات اقتباس مفردة (''). استخدم علامات الاقتباس المفردة في كافة أغلفة الأوامر باستثناء shell الأوامر Windows (cmd.exe). في حالة استخدامك Windows Command Shell (cmd.exe)، فقم بإحاطة وسيطات المسار بعلامات اقتباس مزدوجة ("") بدلًا من علامات الاقتباس المفردة ('').
إعراب
azcopy copy '<local-directory-path>\*' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<directory-path>'
مثال
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory'
مثال (نقطة نهاية Data Lake Storage)
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myBlobDirectory'
قم بإلحاق علامة --recursive
لتحميل الملفات في كافة الدلائل الفرعية.
تحميل ملفات محددة
يمكنك تحميل ملفات معينة باستخدام أسماء ملفات كاملة، أو أسماء جزئية بأحرف البدل (*)، أو باستخدام التواريخ والأوقات.
تلميح
تتضمن هذه الأمثلة وسيطات المسار بعلامات اقتباس مفردة (""). استخدم علامات الاقتباس المفردة في كافة أغلفة الأوامر باستثناء shell الأوامر Windows (cmd.exe). في حالة استخدامك Windows Command Shell (cmd.exe)، فقم بإحاطة وسيطات المسار بعلامات اقتباس مزدوجة ("") بدلًا من علامات الاقتباس المفردة ('').
تحديد عدة أسماء ملفات كاملة
استخدم أمر نسخ azcopy مع الخيار --include-path
. افصل أسماء الملفات الفردية عن طريق فاصلة منقوطة (;
).
إعراب
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --include-path <semicolon-separated-file-list>
مثال
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --include-path 'photos;documents\myFile.txt' --recursive'
مثال (نقطة نهاية Data Lake Storage)
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --include-path 'photos;documents\myFile.txt' --recursive'
في هذا المثال، تقوم AzCopy بنقل الدليل C:\myDirectory\photos
والملف C:\myDirectory\documents\myFile.txt
. قم بتضمين الخيار--recursive
لنقل كافة الملفات في الدليل C:\myDirectory\photos
.
يمكنك أيضًا استبعاد الملفات باستخدام خيار --exclude-path
. لمعرفة المزيد، راجع مستندات مرجعية azcopy copy .
استخدم حرف البدل
استخدم أمر نسخ azcopy مع الخيار --include-pattern
. حدد الأسماء الجزئية التي تشمل أحرف البدل. افصل بين الأسماء باستخدام فاصلة منقوطة (;
).
إعراب
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --include-pattern <semicolon-separated-file-list-with-wildcard-characters>
مثال
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --include-pattern 'myFile*.txt;*.pdf*'
مثال (نقطة نهاية Data Lake Storage)
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --include-pattern 'myFile*.txt;*.pdf*'
يمكنك أيضًا استبعاد الملفات باستخدام خيار --exclude-pattern
. لمعرفة المزيد، راجع مستندات مرجعية azcopy copy .
ينطبق الخياران --include-pattern
و --exclude-pattern
فقط على أسماء الملفات وليس على المسار. إذا كنت ترغب في نسخ جميع الملفات النصية الموجودة في شجرة الدليل، فاستخدم خيار -recursive
للحصول على شجرة الدليل بأكملها، ثم استخدم -include-pattern
وحدد *.txt
للحصول على جميع الملفات النصية.
تحميل الملفات التي تم تعديلها قبل أو بعد التاريخ والوقت
استخدم أمر azcopy copy مع الخيار --include-before
أو --include-after
. حدد التاريخ والوقت بتنسيق ISO-8601 (على سبيل المثال: 2020-08-19T15:04:00Z
).
تحمل الأمثلة التالية الملفات التي تم تعديلها في التاريخ المحدد أو بعده.
إعراب
azcopy copy '<local-directory-path>\*' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-or-directory-name>' --include-after <Date-Time-in-ISO-8601-format>
مثال
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory' --include-after '2020-08-19T15:04:00Z'
مثال (نقطة نهاية Data Lake Storage)
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/FileDirectory' --include-after '2020-08-19T15:04:00Z'
للحصول على مرجع مفصل، راجع نسخة من المستندات المرجعية.
تحميل بعلامات الفهرس
يمكنك تحميل ملف وإضافة علامات فهرس كائن ثنائي كبير الحجم إلى الكائن الثنائي كبير الحجم الهدف.
إذا كنت تستخدم تخويل Microsoft Entra، فيجب تعيين دور مالك بيانات كائن ثنائي كبير الحجم للتخزين، أو يجب منحه الإذن Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write
لعملية موفر موارد Azure عبر دور Azure مخصص. إذا كنت تستخدم رمزًا مميزًا لتوقيع الوصول المشترك (SAS)، فيجب أن يوفر هذا الرمز المميز الوصول إلى علامات الكائن ثنائي الحجم عبر t
إذن SAS.
لإضافة علامات، استخدم الخيار --blob-tags
جنبًا إلى جنب مع زوج قيم مفتاح-قيمة مشفر لعنوان URL.
على سبيل المثال، لإضافة المفتاح my tag
وقيمة my tag value
، يمكنك إضافة --blob-tags='my%20tag=my%20tag%20value'
إلى معلمة الوجهة.
افصل بين علامات الفهرس المتعددة باستخدام علامة العطف (&
). على سبيل المثال، إذا كنت تريد إضافة مفتاح my second tag
وقيمة my second tag value
، فإن سلسلة الخيار الكاملة ستكون --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'
.
توضح الأمثلة التالية كيفية استخدام الخيار--blob-tags
.
تلميح
يتضمن هذا المثال الوسيطات الخاصة بالمسار بعلامات اقتباس مفردة (''). استخدم علامات الاقتباس المفردة في كافة أغلفة الأوامر باستثناء shell الأوامر Windows (cmd.exe). في حالة استخدامك Windows Command Shell (cmd.exe)، فقم بإحاطة وسيطات المسار بعلامات اقتباس مزدوجة ("") بدلًا من علامات الاقتباس المفردة ('').
تحميل ملف
azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt' --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'
تحميل دليل
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --recursive --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'
تحميل محتويات الدليل
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory' --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'
إشعار
إذا قمت بتحديد دليل للمصدر، فستحتوي كل النقط الكبيرة التي يتم نسخها إلى الوجهة على نفس العلامات التي تحددها في الأمر.
تحميل مع أعلام اختيارية
بمقدورك تعديل عملية التحميل باستخدام علامات اختيارية. إليك بعض الأمثلة.
السيناريو | العلامة |
---|---|
تحميل الملفات على هيئة Append Blobs أو Page Blobs. | --blob-type=[BlockBlob|PageBlob|AppendBlob] |
حمّل إلى طبقة وصول محددة (مثل طبقة الأرشيف). | - block-blob-tier = [لا شيء | ساخن | رائع | أرشيف] |
للحصول على قائمة كاملة، راجع الخيارات .
الخطوات التالية
يمكنك العثور على مزيد من الأمثلة في هذه المقالات:
- أمثلة: تنزيل
- أمثلة: النسخ بين الحسابات
- أمثلة: مزامنة
- أمثلة: مستودعات Amazon S3
- أمثلة: Google Cloud Storage
- أمثلة: ملفات Azure
- برنامج تعليمي: ترحيل البيانات المحلية إلى التخزين السحابي باستخدام AzCopy
راجع هذه المقالات لتكوين الإعدادات وتحسين الأداء واستكشاف المشكلات وإصلاحها: