Ich bin neu in PS und ich versuche, eine Funktion zu schreiben, die Parameter von einer globalen Variablen übernimmt. Ich möchte einen Pfadnamen aus einer TXT-Datei in eine Funktion im selben Skript übergeben.Übergeben eines Pfadverzeichnisses an eine Funktion in PowerShell
function GetCorrectChildren ([string] $homepath,$min,$max,$row)
{
#Testpoint 2
write-host "homepath = $homepath"
$ColItem = (Get-ChildItem $homepath |? {$_.PSIsContainer} | sort-object)
}
foreach ($homepath in (Get-Content $PSScriptRoot\homepath_short.txt))
{
$freeSpace = [win32api]::GetDiskFreeSpace("$homepath").FreeBytesAvailable/1073741824
$totalSpace = [win32api]::GetDiskFreeSpace("$homepath").TotalNumberOfBytes/1073741824
$percentageFreeSpace = $freeSpace/$totalSpace * 100
if($freeSpace -lt $threshold)
{
#Testpoint 1
write-host "homepath = $homepath"
GetCorrectChildren ("$homepath",$min,$max,$OriRow)
}
Für #Testpoint 1
, es gibt die Pfadnamen richtig was \\C:\test1\test_a
ist. In #Testpoint 2
gibt es jedoch \\C:\test1\test_a 20 30 System.Object
zurück.
Ich verstehe nicht, was die 20 30 System.Object
bedeutet und woher kommt es? Kann jemand etwas Licht darauf werfen? Dank