Özet
aa komut [seçenekler]
Açıklama
aa, Apple Arşivleri (Apple Archives) oluşturur ve bunları işler.
Komutlar
archive Hedef dizinin içeriğini arşivler append Hedef dizinin içeriğini arşivler, mevcut bir arşiv dosyasına ekler extract Bir arşivin içeriğini hedef dizine çıkarır list Bir arşivin içeriğini listeler convert Bir arşivi başka bir arşive dönüştürür manifest 'archive -manifest' komutunun takma adıdır verify Hedef dizinin içeriğini bir bildirim (manifest) ile karşılaştırır check-and-fix Hata düzelten bir bildirim kullanarak hedef dizinin içeriğini doğrular ve düzeltir
Seçenekler
-v: Ayrıntı düzeyini artırır. Varsayılan olarak sessiz çalışır.-h: Kullanımı yazdırır ve çıkış yapar.
-d -dir Arşivleme/çıkarma için hedef dizin. Varsayılan, geçerli dizindir.
-i -input_file Girdi dosyası. Varsayılan, standart girdidir (stdin).
-o -output_file Çıktı dosyası. Varsayılan, standart çıktıdır (stdout).
-subdir -subdir dir altındaki arşivlenecek yol. subdir, arşivlenen yollara dahil edilir ve çıkarılır. Varsayılan olarak boştur.
-D -dir_and_subdir
Hem dir değerini dirname dir_and_subdir hem de subdir değerini basename dir_and_subdir olarak ayarlar.
-x: Arşivleme yaparken birim (volume) sınırlarını aşmaz.-p: Kaynak yola bağlı olarak hedef yolu otomatik olarak oluşturur. Örneğin 'aa archive -d foo -p' komutu 'aa archive -d foo -o foo.aar' haline gelir.
-a -algorithm Arşiv oluştururken kullanılan sıkıştırma algoritması. lzfse, lzma, lz4, zlib, raw değerlerinden biridir. Varsayılan değer lzfse'dir.
-b -block_size Arşivleri sıkıştırırken kullanılan blok boyutu; isteğe bağlı b, k, m, g son ekiyle bir sayı belirtilir (herhangi bir son ek belirtilmezse bayt olduğu varsayılır). Varsayılan olarak archive komutu için 4m, diğer komutlar için 1m değerindedir.
-t -worker_threads Verileri sıkıştıran/açan iş parçacığı (worker thread) sayısı. Varsayılan olarak, çalışan makinedeki fiziksel CPU sayısıdır.
-wt -writer_threads Arşiv içeriğini çıkaran yazıcı iş parçacığı (writer thread) sayısı. Varsayılan olarak worker_threads ile eşleşir.
-enable-dedup -(-no-enable-dedup) Ayarlanırsa ve arşivde SLC alanları (SLC alanı, aynı içeriğe sahip normal dosyalardan oluşan bir kümeyi tanımlar) mevcutsa, aynı verilere sahip dosyalar klon (clone) olarak çıkarılır.
Böyle bir arşiv oluşturmak için SLC alanını manuel olarak eklemeniz gerektiğini unutmayın; örneğin aa archive -o archive.aa -include-field SLC .... Bu durumda aa, aynı içeriğe sahip dosyaları bir küme olarak işaretler ve sonunda bir özet gösterir.
Komut satırından arşivdeki verileri tekilleştirmenin (verileri yalnızca bir kez depolayarak) bir yolu yoktur. Bunu elde etmek için API'yi kullanın ve AA_FLAG_ARCHIVE_DEDUPLICATE_DAT bayrağını iletin.
-enable-holes -(-no-enable-holes) Ayarlanırsa ve dosya sistemi bunu destekliyorsa, 0'la doldurulmuş bölümleri depolamak için dosyalardaki boşlukları (holes) algılar ve oluşturur.
-ignore-eperm -(-no-ignore-eperm) Ayarlanırsa, dosya özniteliklerini ayarlarken oluşan EPERM (işleme izin verilmedi) hatalarını yoksayar.
-manifest Aşağıdaki seçeneklerin takma adıdır: -exclude-field dat -include-field sh2,siz,idx,idz -a lzfse -b 1m
-imanifest -input_manifest_file Girdi arşiviyle eşleşen bildirim dosyası. İşlemeyi hızlandırmak amacıyla giriş seçim seçenekleriyle birlikte kullanılabilir.
-omanifest -output_manifest_file Çıktı arşivinin bildirim dosyasını alır.
-list-format -format list komutunun çıktı biçimi. text, json değerlerinden biridir. Varsayılan değer text'tir.
Öğe Seçim Seçenekleri
İlk olarak bir başlangıç öğe kümesi seçmek için -include-path ve -include-path-list seçenekleri uygulanır, ardından bu kümeden öğeleri çıkarmak için -exclude-path, -exclude-path-list, -exclude-name, -exclude-regex seçenekleri uygulanır.
Herhangi bir -include-path veya -include-path-list seçeneği verilmezse, başlangıç kümesine tüm öğeler dahil edilir. Bir dizin dahil edilirse/hariç tutulursa, tüm alt ağaç dahil edilir/hariç tutulur.
-include-path -path Önek olarak path değerine sahip olan öğe yollarını dahil eder. Bu seçenek birden fazla kez belirtilebilir.
-exclude-path -path Önek olarak path değerine sahip olan öğe yollarını hariç tutar. Bu seçenek birden fazla kez belirtilebilir.
-include-path-list -path_list_file Dahil edilecek yolların listesini içeren dosya (satır başına bir öğe). Bu seçenek birden fazla kez belirtilebilir.
-exclude-path-list -path_list_file Hariç tutulacak yolların listesini içeren dosya (satır başına bir öğe). Bu seçenek birden fazla kez belirtilebilir.
-include-regex -expr expr düzenli ifadesiyle (regular expression) eşleşen öğe yollarını dahil eder, bkz. re_format(7). Bu seçenek birden fazla kez belirtilebilir.
-exclude-regex -expr expr düzenli ifadesiyle eşleşen öğe yollarını hariç tutar, bkz. re_format(7). Bu seçenek birden fazla kez belirtilebilir.
-exclude-name -name Yolun tek bir bileşeninin name ile tam olarak eşleştiği öğe yollarını hariç tutar. Bu seçenek birden fazla kez belirtilebilir.
--include-type -<tür_belirteci> Yalnızca verilen türlerle eşleşen öğeleri dahil eder. <tür_belirteci>, aşağıda listelenen öğe türü karakterlerinden bir veya daha fazlasını içeren bir sözcüktür.
-exclude-type -<tür_belirteci> Yalnızca verilen türlerle eşleşmeyen öğeleri dahil eder. <tür_belirteci>, aşağıda listelenen öğe türü karakterlerinden bir veya daha fazını içeren bir sözcüktür.
-include-field -
-exclude-field -
Şifreleme Seçenekleri
Arşivleme yaparken şifreleme, -password..., -key... veya -recipient-pub seçeneklerinden biriyle belirlenir.
-sign-priv ile bir özel anahtar belirtilirse arşiv imzalanır.
Mevcut profillerle, genel/özel anahtarlar Elliptic Curve P-256 üzerindedir ve simetrik anahtarlar 256 bit uzunluğundadır.
-keychain Simetrik anahtarları ve şifreleri yüklemek/depolamak için Keychain uygulamasını kullanır.
-password -file Şifreleme parolası içeren dosya. Şifreleme yaparken -password-gen seçeneği geçilirse oluşturulan parolayı alır. Parolayı standart çıktıya yazdırmak için - olabilir.
--password-value -parola Parola.
-password-gen Şifreleme yaparken yeni bir rastgele parola oluşturur. Parolayı Keychain'de depolamak için -keychain seçeneğiyle birlikte veya parolayı bir dosyada depolamak ya da yazdırmak için -password seçeneğiyle birlikte bu seçeneğin her zaman kullanılması önerilir.
-key -file Şifreleme simetrik anahtarını içeren dosya. Şifreleme yaparken -key-gen seçeneği geçilirse oluşturulan anahtarı alır.
-key-value -anahtar Simetrik anahtar; "hex:<64 onaltılık basamak>" veya "base64:<base64 kullanılarak kodlanmış 32 bayt>" biçimindedir.
-key-gen Şifreleme yaparken yeni bir rastgele simetrik anahtar oluşturur.
-recipient-pub -file Şifreleme için alıcı genel anahtarı. Arşivi çözmek için ilgili özel anahtar gereklidir.
-recipient-priv -file Şifre çözme için alıcı özel anahtarı. Arşiv, ilgili genel anahtarla şifrelenmiş olmalıdır.
-sign-pub -file Şifre çözme için imza genel anahtarı. Arşiv, ilgili özel anahtarla imzalanmış olmalıdır.
-sign-priv -file Şifreleme için imza özel anahtarı. Arşivi çözmek ve kimliğini doğrulamak için ilgili genel anahtar gereklidir.
Öğe Türleri
b blok özel (block special) c karakter özel (character special) d dizin f normal dosya l sembolik bağ m meta veriler (metadata) p fifo s soket
Öğe Alanları
typ öğe türü pat yol (path) lnk bağ yolu (link path) dev aygıt kimliği (device id) uid kullanıcı kimliği (user id) gid grup kimliği (group id) mod erişim izinleri flg bayraklar mtm değiştirme zamanı (modification time) ctm oluşturma zamanı (creation time) btm yedekleme zamanı (backup time) xat genişletilmiş öznitelikler (extended attributes) acl erişim denetim listesi (access control list) cks CRC32 sağlama toplamı sh1 SHA1 özeti sh2 SHA2-256 özeti dat dosya içeriği siz dosya boyutu duz disk kullanımı idx ana arşivdeki öğe indeksi yec dosya verisi hata düzeltme kodları yaf Apple Archive alanları (meta veri öğesinde) all tüm alanlar için takma ad (yalnızca hariç tutma) attr uid,gid,mod,flg,mtm,btm,ctm için takma ad
Örnekler
8 MB'lık bloklar halinde LZMA sıkıştırması kullanarak foo dizininin içeriğini foo.aar arşivine aktarın:
aa archive -d foo -o foo.aar -a lzma -b 8m
foo.aar içeriğini dst dizinine çıkarın:
aa extract -d dst -i foo.aar
1 MB'lık bloklar halinde LZFSE sıkıştırması kullanarak foo dizininin içeriğine ait bir bildirim dosyasını foo.manifest içine oluşturun:
aa manifest -d foo -o foo.manifest -a lzfse -b 1m
dst içeriğinin foo.manifest bildirim dosyasıyla eşleştiğini doğrulayın:
aa verify -i foo.manifest -d dst -v
foo.manifest içindeki tüm öğe yollarını yazdırın:
aa list -i foo.manifest
foo.manifest içindeki normal dosyalar için tüm öğe yollarını, uid ve gid değerlerini yazdırın:
aa list -v -i foo.manifest -include-type f -exclude-field all -include-field uid,gid,pat
foo.aar arşivinin içeriğine ait bir bildirim dosyasını foo.manifest içinde oluşturun:
aa convert -manifest -v -i foo.aar -o foo.manifest
foo.aar arşivinden dst dizinine Applications/Mail.app önekiyle eşleşen bir öğe alt kümesini çıkarın:
aa extract -i foo.aar -include-path Applications/Mail.app -d dst
Rastgele bir parola oluşturup bunu Keychain'de depolayarak foo dizinini foo.aea arşivine aktarın ve şifreleyin:
aa archive -d foo -o foo.aea -keychain -password-gen
Parolayı Keychain'den alarak foo.aea arşivini dst dizinine çözün ve çıkarın (yerel kimlik doğrulama gerektirir):
aa extract -o foo.aea -d dst -keychain
foo dizinini foo.aar arşivine aktarın:
aa archive -p -d foo
foo.aar arşivini foo dizinine çıkarın:
aa extract -p -i foo.aar
macOS March 9, 2020 macOS