Ich versuche, alle Bilder, ihre Namen und Größen aus einem Ordner zu bekommen. Ich habe über 2000 davon. Ich weiß genug über die Programmierung, dass ich diesen Code aus anderen Stack-Überlauf-Fragen zusammensetzen konnte. Alles funktioniert wie erwartet außer der Linie $imgInfo | Out-File -FilePath $outFile -Append
.Variable wird nicht in Datei geschrieben
$outFile = "G:\tempFile\imageSizes.txt"
$(Get-ChildItem -Filter *.jpg).FullName | ForEach-Object {
$img = [Drawing.Image]::FromFile($_);
$imgInfo = "$([System.IO.Path]::GetFileName($_)) $($img.Width) x $($img.Height)"
return $imgInfo # this line is to check that $imgInfo has the correct information
$imgInfo | Out-File -FilePath $outFile -Append # this line isn't working
}
Ich versuchte $imgInfo | Out-File -FilePath $outFile -Append
mit $imgInfo | Add-Content -Path $outFile
und die Schaffung der entsprechenden Datei zu ersetzen, aber das entweder nicht funktioniert hat.
ersetzen Was denken Sie 'return' tut? – PetSerAl
'return' beendet den' ForEach-Object' Skriptblock (Code zwischen '{}'). –
Ich hätte daran denken sollen. Was ist der beste Weg, um einen Wert in einer PowerShell-Variablen zu drucken? Gibt es in C++ eine 'print'-Funktion ähnlich wie 'cout' oder schreibe ich einfach' $ imgInfo', damit der Wert in der Variable auf dem Bildschirm gespeichert wird? –