AA(1) | General Commands Manual | AA(1) |
aa
— Manipulate
Apple Archives
aa command [options]
aa creates and manipulates Apple Archives
archive Archive
the contents of the target directory
append Archive
the contents of the target directory, append to an existing archive file
extract Extract
the contents of an archive to the target directory
list List
the contents of an archive
convert Convert
an archive into another archive
manifest Alias
for 'archive -manifest'
verify Compare
the contents of the target directory with a manifest
check-and-fix Verify and fix the
contents of the target directory using an error correcting manifest
-v
-h
-d
-dir
-i
-input_file
-o
-output_file
-subdir
-subdir
-D
-dir_and_subdir
-x
-p
-a
-algorithm
-b
-block_size
-t
-worker_threads
-wt
-writer_threads
-enable-dedup
-(-no-enable-dedup)
Note that to create such an archive, you have to manually add the SLC field, for example `aa archive -o archive.aa -include-field SLC ...`. In this case, aa marks files with identical content as a cluster and shows a summary at the end.
There is no way to deduplicate the data in the archive (by storing the data only once) from the command line. To achieve this, use the API and pass the `AA_FLAG_ARCHIVE_DEDUPLICATE_DAT` flag.
-enable-holes
-(-no-enable-holes)
-ignore-eperm
-(-no-ignore-eperm)
-manifest
-imanifest
-input_manifest_file
-omanifest
-output_manifest_file
-list-format
-format
-include-path and -include-path-list options are applied first to select an initial set of entries, then -exclude-path, -exclude-path-list, -exclude-name, -exclude-regex are applied to remove entries from this set.
If no -include-path or -include-path-list option is given, all entries are included in the initial set. If a directory is included/excluded, the entire sub-tree is included/excluded.
-include-path
-path
-exclude-path
-path
-include-path-list
-path_list_file
-exclude-path-list
-path_list_file
-include-regex
-expr
-exclude-regex
-expr
-exclude-name
-name
--include-type
-<type_spec>
-exclude-type
-<type_spec>
-include-field
-<field_spec>
-exclude-field
-<field_spec>
When archiving, encryption is selected by one of the -password..., -key..., or -recipient-pub options.
The archive will be signed if a private key is specified with -sign-priv.
With the currently available profiles, public/private keys are on the Elliptic Curve P-256, and symmetric keys are 256-bit long.
-keychain
-password
-file
--password-value
-password
-password-gen
-key
-file
-key-value
-key
-key-gen
-recipient-pub
-file
-recipient-priv
-file
-sign-pub
-file
-sign-priv
-file
b block special
c character special
d directory
f regular file
l symbolic link
m metadata
p fifo
s socket
typ entry type
pat path
lnk link path
dev device id
uid user id
gid group id
mod access permissions
flg flags
mtm modification time
ctm creation time
btm backup time
xat extended attributes
acl access control list
cks CRC32 checksum
sh1 SHA1 digest
sh2 SHA2-256 digest
dat file contents
siz file size
duz disk usage
idx entry index in main archive
yec file data error correcting codes
yaf Apple Archive fields (in metadata entry)
all alias for all fields (exclude only)
attr alias for uid,gid,mod,flg,mtm,btm,ctm
Archive the contents of directory foo into archive foo.aar, using LZMA compression with 8 MB blocks
aa archive -d foo -o foo.aar -a lzma -b 8m
Extract the contents of foo.aar in directory dst
aa extract -d dst -i foo.aar
Create a manifest of the contents of directory foo into foo.manifest, using LZFSE compression with 1 MB blocks
aa manifest -d foo -o foo.manifest -a lzfse -b 1m
Verify the contents of dst match the manifest foo.manifest
aa verify -i foo.manifest -d dst -v
Print all entry paths in foo.manifest
aa list -i foo.manifest
Print all entry paths, uid, gid for regular files in foo.manifest
aa list -v -i foo.manifest -include-type f -exclude-field all -include-field uid,gid,pat
Create a manifest of the contents of archive foo.aar in foo.manifest
aa convert -manifest -v -i foo.aar -o foo.manifest
Extract a subset of entries matching prefix Applications/Mail.app from archive foo.aar in directory dst
aa extract -i foo.aar -include-path Applications/Mail.app -d dst
Archive and encrypt directory foo to archive foo.aea, generating a random password and storing it in the Keychain
aa archive -d foo -o foo.aea -keychain -password-gen
Decrypt and extract archive foo.aea to directory dst, obtaining the password from the Keychain (requires local authentication)
aa extract -o foo.aea -d dst -keychain
Archive directory foo to archive foo.aar
aa archive -p -d foo
Extract archive foo.aar to directory foo
aa extract -p -i foo.aar
March 9, 2020 | macOS |