Быстрый способ проверить используемую емкость файла учетной записи хранилища Azure с помощью powershell - PullRequest
0 голосов
/ 17 апреля 2019

Слишком медленно проверять общее количество файлов и емкость папки общего доступа к учетной записи хранения через Storage Explorer. Есть ли более быстрый способ получить эту информацию? Через powershell, например?

Ответы [ 2 ]

0 голосов
/ 24 апреля 2019

Пожалуйста, используйте код ниже (напишите в PowerShell ISE):

$fileinfor =@{count=0;length=0}

function file_info()
{

$context = New-AzStorageContext -StorageAccountName your_storage_account_name -StorageAccountKey your_storage_account_key
$shares = Get-AzStorageShare -Context $context

foreach($share in $shares)
{
#get all the files and directories in a file share
$filesAndDirs = Get-AzStorageFile -ShareName $share.name -Context $context

foreach($f in $filesAndDirs)
{
if($f.gettype().name -eq "CloudFile")
{
Write-Output $f.name
$fileinfor["count"]++
$fileinfor["length"]=$fileinfor["length"]+$f.Properties.Length

}
elseif($f.gettype().name -eq "CloudFileDirectory")
{
list_subdir($f)
}
}

}
Write-Output ""
Write-Output "File total count: "$fileinfor["count"]
Write-Output "File total length: "$fileinfor["length"]

}


function list_subdir([Microsoft.WindowsAzure.Storage.File.CloudFileDirectory]$dirs)
{

$path = $dirs.Uri.PathAndQuery.Remove(0,($dirs.Uri.PathAndQuery.IndexOf('/',1)+1))
$filesAndDirs = Get-AzStorageFile -ShareName $dirs.share.name -Path $path -Context $context | Get-AzStorageFile
foreach($f in $filesAndDirs)
{
if($f.gettype().name -eq "CloudFile")
{
Write-Output $f.name
$fileinfor["count"]++
$fileinfor["length"]=$fileinfor["length"]+$f.Properties.Length

}
elseif($f.gettype().name -eq "CloudFileDirectory")
{
list_subdir($f)
}

}

}



file_info

И результат теста:

enter image description here

0 голосов
/ 17 апреля 2019

Приведенный ниже код powershell должен работать

$ctx = New-AzureStorageContext -StorageAccountName <storage-account-name> -StorageAccountKey <storage-account-key>
(Get-AzureStorageShare -Context $ctx).count
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...