AzCopy kullanarak dosyaları Azure Blob depolamaya yükleme

AzCopy v10 komut satırı yardımcı programını kullanarak dosyaları ve dizinleri Blob depolamaya yükleyebilirsiniz.

Blobları indirme, Blob depolama ile eşitleme veya hesaplar arasında blob kopyalama gibi diğer görev türlerine yönelik örnekleri görmek için bu makalenin Sonraki Adımlar bölümünde sunulan bağlantılara bakın.

Kullanmaya başlayın

AzCopy'yi indirmek için AzCopy'yi kullanmaya başlama makalesine bakın ve depolama hizmetine yetkilendirme kimlik bilgilerini nasıl sağlayabileceğinizi öğrenin.

Not

Bu makaledeki örneklerde, Microsoft Entra Id kullanarak yetkilendirme kimlik bilgilerini sağladığınız varsayılır.

Blob verilerine erişim yetkisi vermek için SAS belirteci kullanmayı tercih ediyorsanız, bu belirteci her AzCopy komutundaki kaynak URL'sine ekleyebilirsiniz. Örneğin: 'https://<storage-account-name>.blob.core.windows.net/<container-name><SAS-token>'.

Kapsayıcı oluşturma

Azcopy make komutunu kullanarak kapsayıcı oluşturabilirsiniz.

İpucu

Bu örnek, yol bağımsız değişkenlerini tek tırnak ('') içine alınmaktadır. Windows Komut Kabuğu (cmd.exe) dışında tüm komut kabuklarında tek tırnak işareti kullanın. Windows Komut Kabuğu (cmd.exe) kullanıyorsanız, yol bağımsız değişkenlerini tek tırnak ('') yerine çift tırnak ("") içine alın.

Söz dizimi

azcopy make 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>'

Örnek

azcopy make 'https://mystorageaccount.blob.core.windows.net/mycontainer'

Örnek (Data Lake Storage uç noktası)

azcopy make 'https://mystorageaccount.dfs.core.windows.net/mycontainer'

Ayrıntılı başvuru belgeleri için bkz . azcopy make.

Dosyayı karşıya yükleme

azcopy copy komutunu kullanarak bir dosyayı karşıya yükleyin.

İpucu

Bu örnek, yol bağımsız değişkenlerini tek tırnak ('') içine alınmaktadır. Windows Komut Kabuğu (cmd.exe) dışında tüm komut kabuklarında tek tırnak işareti kullanın. Windows Komut Kabuğu (cmd.exe) kullanıyorsanız, yol bağımsız değişkenlerini tek tırnak ('') yerine çift tırnak ("") içine alın.

Söz dizimi

azcopy copy '<local-file-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<blob-name>'

Örnek

azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myTextFile.txt'

Örnek (Data Lake Storage uç noktası)

azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myTextFile.txt'

Dosya yolunun veya dosya adının herhangi bir yerinde joker karakter simgesi (*) kullanarak da dosyayı karşıya yükleyebilirsiniz. Örneğin: 'C:\myDirectory\*.txt', veya C:\my*\*.txt.

Dizini karşıya yükleme

azcopy copy komutunu kullanarak bir dizini karşıya yükleyin.

Bu örnek, bir dizini (ve bu dizindeki tüm dosyaları) bir blob kapsayıcısına kopyalar. Sonuç, kapsayıcıdaki aynı ada sahip bir dizindir.

İpucu

Bu örnek, yol bağımsız değişkenlerini tek tırnak ('') içine alınmaktadır. Windows Komut Kabuğu (cmd.exe) dışında tüm komut kabuklarında tek tırnak işareti kullanın. Windows Komut Kabuğu (cmd.exe) kullanıyorsanız, yol bağımsız değişkenlerini tek tırnak ('') yerine çift tırnak ("") içine alın.

Söz dizimi

azcopy copy '<local-directory-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --recursive

Örnek

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --recursive

Örnek (Data Lake Storage uç noktası)

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --recursive

Kapsayıcı içindeki bir dizine kopyalamak için, komut dizenizde bu dizinin adını belirtmeniz gerekir.

Örnek

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory' --recursive

Örnek (Data Lake Storage uç noktası)

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myBlobDirectory' --recursive

Kapsayıcıda mevcut olmayan bir dizinin adını belirtirseniz, AzCopy bu ada göre yeni bir dizin oluşturur.

Dizin içeriğini karşıya yükleme

azcopy copy komutunu kullanarak bir dizinin içeriğini karşıya yükleyin. İçeriği içeren dizinin kendisini kopyalamadan karşıya yüklemek için joker karakter simgesini (*) kullanın.

İpucu

Bu örnek, yol bağımsız değişkenlerini tek tırnak ('') içine alınmaktadır. Windows Komut Kabuğu (cmd.exe) dışında tüm komut kabuklarında tek tırnak işareti kullanın. Windows Komut Kabuğu (cmd.exe) kullanıyorsanız, yol bağımsız değişkenlerini tek tırnak ('') yerine çift tırnak ("") içine alın.

Söz dizimi

azcopy copy '<local-directory-path>\*' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<directory-path>'

Örnek

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myBlobDirectory'

Örnek (Data Lake Storage uç noktası)

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/myBlobDirectory'

--recursive Tüm alt dizinlerdeki dosyaları karşıya yüklemek için bayrağını ekleyin.

Belirli dosyaları karşıya yükleme

Tam dosya adlarını, joker karakterli kısmi adları (*) veya tarih ve saatleri kullanarak belirli dosyaları karşıya yükleyebilirsiniz.

İpucu

Bu örnekler yol bağımsız değişkenlerini tek tırnak ('') içine alın. Windows Komut Kabuğu (cmd.exe) dışında tüm komut kabuklarında tek tırnak işareti kullanın. Windows Komut Kabuğu (cmd.exe) kullanıyorsanız, yol bağımsız değişkenlerini tek tırnak ('') yerine çift tırnak ("") içine alın.

Birden çok tam dosya adı belirtme

azcopy copy komutunu seçeneğiyle --include-path birlikte kullanın. Tek tek dosya adlarını noktalı virgül (; kullanarak) ayırın.

Söz dizimi

azcopy copy '<local-directory-path>' 'https://<storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --include-path <semicolon-separated-file-list>

Örnek

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --include-path 'photos;documents\myFile.txt' --recursive'

Örnek (Data Lake Storage uç noktası)

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --include-path 'photos;documents\myFile.txt' --recursive'

Bu örnekte AzCopy, dizini ve C:\myDirectory\documents\myFile.txt dosyayı aktarırC:\myDirectory\photos. Dizindeki --recursive tüm dosyaları C:\myDirectory\photos aktarma seçeneğini ekleyin.

Ayrıca seçeneğini kullanarak --exclude-path dosyaları dışlayabilirsiniz. Daha fazla bilgi edinmek için bkz . azcopy copy reference docs.

Joker karakter kullanma

azcopy copy komutunu seçeneğiyle --include-pattern birlikte kullanın. Joker karakterleri içeren kısmi adlar belirtin. Adları noktalı virgül (; kullanarak ayırın).

Söz dizimi

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>

Örnek

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --include-pattern 'myFile*.txt;*.pdf*'

Örnek (Data Lake Storage uç noktası)

azcopy copy 'C:\myDirectory' 'https://mystorageaccount.dfs.core.windows.net/mycontainer' --include-pattern 'myFile*.txt;*.pdf*'

Ayrıca seçeneğini kullanarak --exclude-pattern dosyaları dışlayabilirsiniz. Daha fazla bilgi edinmek için bkz . azcopy copy reference docs.

--include-pattern ve --exclude-pattern seçenekleri yalnızca dosya adlarına uygulanır, yola uygulanmaz. Bir dizin ağacında bulunan tüm metin dosyalarını kopyalamak istiyorsanız, -recursive dizin ağacının tamamını almak için seçeneğini kullanın ve ardından ve öğesini *.txt kullanarak -include-pattern tüm metin dosyalarını alın.

Tarih ve saat öncesinde veya sonrasında değiştirilmiş dosyaları karşıya yükleme

veya --include-after seçeneğiyle --include-before azcopy copy komutunu kullanın. ISO-8601 biçiminde bir tarih ve saat belirtin (Örneğin: 2020-08-19T15:04:00Z).

Aşağıdaki örneklerde, belirtilen tarihte veya sonrasında değiştirilen dosyalar karşıya yüklenir.

Söz dizimi

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>

Örnek

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.blob.core.windows.net/mycontainer/FileDirectory'  --include-after '2020-08-19T15:04:00Z'

Örnek (Data Lake Storage uç noktası)

azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.dfs.core.windows.net/mycontainer/FileDirectory'   --include-after '2020-08-19T15:04:00Z'

Ayrıntılı başvuru için azcopy copy reference belgelerine bakın.

Dizin etiketleriyle karşıya yükleme

Bir dosyayı karşıya yükleyebilir ve hedef bloba blob dizini etiketleri ekleyebilirsiniz.

Microsoft Entra yetkilendirmesi kullanıyorsanız, güvenlik sorumlunuza Depolama Blobu Veri Sahibi rolü atanmalıdır veya özel bir Azure rolü aracılığıyla Azure kaynak sağlayıcısı işlemine Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write izin verilmelidir. Paylaşılan Erişim İmzası (SAS) belirteci kullanıyorsanız, bu belirtecin SAS izni aracılığıyla blob etiketlerine t erişim sağlaması gerekir.

Etiket eklemek için url ile kodlanmış anahtar-değer çifti seçeneğini kullanın --blob-tags . Örneğin, anahtarı my tag ve değerini my tag valueeklemek için hedef parametresine eklemeniz --blob-tags='my%20tag=my%20tag%20value' gerekir.

Ve işareti (& kullanarak birden çok dizin etiketini ayırın. Örneğin, bir anahtar my second tag ve değer my second tag valueeklemek istiyorsanız, tam seçenek dizesi olacaktır --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'.

Aşağıdaki örneklerde seçeneğin nasıl kullanılacağı gösterilmektedir --blob-tags .

İpucu

Bu örnek, yol bağımsız değişkenlerini tek tırnak ('') içine alınmaktadır. Windows Komut Kabuğu (cmd.exe) dışında tüm komut kabuklarında tek tırnak işareti kullanın. Windows Komut Kabuğu (cmd.exe) kullanıyorsanız, yol bağımsız değişkenlerini tek tırnak ('') yerine çift tırnak ("") içine alın.

Dosyayı karşıya yükleme

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'

Dizini karşıya yükleme

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'

Dizin içeriğini karşıya yükleme

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'

Not

Kaynak için bir dizin belirtirseniz, hedefe kopyalanan tüm bloblar komutta belirttiğiniz etiketlerle aynı olur.

İsteğe bağlı bayraklarla karşıya yükleme

İsteğe bağlı bayrakları kullanarak karşıya yükleme işleminizi değiştirebilirsiniz. Aşağıda birkaç örnek verilmiştir.

Senaryo Bayrak
Dosyaları Append Ekleme Blobları veya Sayfa Blobları olarak karşıya yükleyin. --blob-type=[BlockBlob|PageBlob|AppendBlob]
Belirli bir erişim katmanına (arşiv katmanı gibi) yükleyin. --block-blob-tier=[Yok|Sık Erişimli|Seyrek Erişimli|Arşiv]

Tam liste için bkz . seçenekler.

Sonraki adımlar

Bu makalelerde daha fazla örnek bulabilirsiniz:

Ayarları yapılandırmak, performansı iyileştirmek ve sorunları gidermek için şu makalelere bakın: