0
function Get-Diskinfo {
    param(
        [string[]] $Computername = 'XEUTS001',
        [string[]] $drive = 'c:'
    )

    $a = "-join $Computername[1..3]" 

    Get-WmiObject Win32_LogicalDisk `
            -Filter "DeviceID = '$drive'" `
            -ComputerName $Computername `
            -Credential (Get-Credential -Credential ayan-$a) |
        Select-Object `
            @{n='Size'; e={$_.size / 1gb -as [int]}},
            @{n='free';e={$_.freespace / 1gb -as [int]}},
            @{n='% free';e={$_.freespace / $_.size *100 -as [int]}} |
        Format-Table -AutoSize 
}

特定のディスクに関する詳細を取得するために、この関数を作成しました。ただし、それらをリモートでマルチドメイン環境で実行する必要があります。異なる OU のコンピューターには異なるユーザー名があります。スクリプトがコンピューター名自体からユーザー名を取得できるようにしたかったのです。ユーザー名---- "name"+ "first 3 letters of the computername"は、OU 名であるこの形式です。-Joinメソッドを正常に動作させることができます。ただし、変数が関数内のパラメーターである場合は機能しません。ここで、ユーザー名は、次の"ayan--join xeuts001[1..3]"ように表示したいときに次のように表示されます"ayan-xeu"

4

1 に答える 1