Get-Content を使用して、ファイルの各行に基づいてディレクトリ パス名を入力する変数を作成しようとしています。
.csv ファイルに長いユーザー リストがあり、それぞれのユーザー名をチェックしてディレクトリ サイズを取得したいと考えています。
$username 変数を削除し、$startdirectory の末尾にユーザー名を手動で入力すると、スクリプトが機能します。
$username = Get-Content 'C:\Scripts\AvayaUsers.csv'
$startDirectory = '\\xx\xxxx\xxxxxxxxxxx\users\$username'
$directoryItems = Get-ChildItem $startDirectory | Where-Object {$_.PSIsContainer -eq $true} | Sort-Object
foreach ($i in $directoryItems)
{
$subFolderItems = Get-ChildItem $i.FullName -recurse -force | Where-Object {$_.PSIsContainer -eq $false} | Measure-Object -property Length -sum | Select-Object Sum
$i.FullName + " -- " + "{0:N2}" -f ($subFolderItems.sum / 1GB) + " GB"
}