Эта команда сначала создает объект ACL с 3 записями списка acl, а затем задает ACL рекурсивно в каталоге.
Пример 2. Рекурсивно задать ACL в корневом каталоге файловой системы
$result = Set-AzDataLakeGen2AclRecursive -FileSystem "filesystem1" -Acl $acl -Context $ctx
$result
FailedEntries : {dir1/dir2/file4}
TotalDirectoriesSuccessfulCount : 500
TotalFilesSuccessfulCount : 2500
TotalFailureCount : 1
ContinuationToken : VBaHi5TfyO2ai1wYTRhIL2FjbGNibjA2c3RmATAxRDVEN0UzRENFQzZCRTAvYWRsc3Rlc3QyATAxRDY2M0ZCQTZBN0JGQTkvZGlyMC9kaXIxL2ZpbGUzFgAAAA==
$result.FailedEntries
Name IsDirectory ErrorMessage
---- ----------- ------------
dir0/dir2/file4 False This request is not authorized to perform this operation using this permission.
# user need fix the failed item , then can resume with ContinuationToken
$result = Set-AzDataLakeGen2AclRecursive -FileSystem "filesystem1" -Acl $acl -ContinuationToken $result.ContinuationToken -Context $ctx
$result
FailedEntries :
TotalDirectoriesSuccessfulCount : 100
TotalFilesSuccessfulCount : 1000
TotalFailureCount : 0
ContinuationToken :
Эта команда сначала задает ACL рекурсивно корневому каталогу и завершается сбоем, а затем возобновляется с помощью ContinuationToken после исправления файла с ошибкой пользователя.
Пример 3. Установка рекурсивного фрагмента ACL по блоку
Этот скрипт задает ACL рекурсивно на блоке каталога по блоку, а размер блока — batchSize * MaxBatchCount. Размер блока составляет 200 в этом скрипте.
Пример 4. Настройка ACL рекурсивно в каталоге и ContinueOnFailure, а затем возобновление из сбоев по одному
$result = Set-AzDataLakeGen2AclRecursive -FileSystem "filesystem1" -Path "dir1" -Acl $acl -ContinueOnFailure -Context $ctx
$result
FailedEntries : {dir0/dir1/file1, dir0/dir2/file4}
TotalDirectoriesSuccessfulCount : 100
TotalFilesSuccessfulCount : 500
TotalFailureCount : 2
ContinuationToken : VBaHi5TfyO2ai1wYTRhIL2FjbGNibjA2c3RmATAxRDVEN0UzRENFQzZCRTAvYWRsc3Rlc3QyATAxRDY2M0ZCQTZBN0JGQTkvZGlyMC9kaXIxL2ZpbGUzFgAAAA==
$result.FailedEntries
Name IsDirectory ErrorMessage
---- ----------- ------------
dir0/dir1/file1 False This request is not authorized to perform this operation using this permission.
dir0/dir2/file4 False This request is not authorized to perform this operation using this permission.
# user need fix the failed item , then can resume with ContinuationToken
foreach ($path in $result.FailedEntries.Name)
{
# user code to fix failed entry in $path
#set ACL again
Set-AzDataLakeGen2AclRecursive -FileSystem "filesystem1" -Path $path -Acl $acl -Context $ctx
}
Эта команда сначала задает ACL рекурсивно каталогу с помощью ContinueOnFailure, а некоторые элементы завершились сбоем, а затем возобновить неудачные элементы по одному.
Параметры
-Acl
Список управления доступом POSIX для рекурсивного задания файла или каталога.
Если размер набора данных превышает размер пакета, операция будет разделена на несколько запросов, чтобы можно было отслеживать ход выполнения.
Размер пакета должен составлять от 1 до 2000.
Значение по умолчанию — 2000.
Установите этот параметр, чтобы игнорировать сбои и продолжить обработку с помощью операции в других под сущностях каталога. По умолчанию операция завершится быстро при возникновении сбоев.
Максимальное количество пакетов, которые могут выполняться одной операцией управления доступом. Если размер набора данных превышает MaxBatchCount умножение BatchSize, будет возвращен маркер продолжения.
Путь в указанной файловой системе, которая изменится рекурсивно.
Может быть файлом или каталогом.
В формате "directory/file.txt" или "directory1/directory2/".
Пропустите этот параметр, чтобы изменить Acl рекурсивно из корневого каталога файловой системы.
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.