Hier der entsprechende Auszug aus meinem Code ist:Powershell Foreach-Schleifendateinamen findet, gibt aber, dass sie nicht existieren
$CurDir = Split-Path $Script:MyInvocation.MyCommand.Path
Get-ChildItem -Path $CurDir -Filter TestFile*.txt | foreach {
gpg --recipient "RecipName" --encrypt $_ }
Dies ist jedoch, was zurückgegeben wird:
gpg: can't open `TestFileForENcryption - Copy (2).txt': No such file or direct
gpg: TestFileForENcryption - Copy (2).txt: encryption failed: No such file or
gpg: can't open `TestFileForENcryption - Copy (3).txt': No such file or direct
gpg: TestFileForENcryption - Copy (3).txt: encryption failed: No such file or
gpg: can't open `TestFileForENcryption - Copy.txt': No such file or directory
gpg: TestFileForENcryption - Copy.txt: encryption failed: No such file or dire
gpg: can't open `TestFileForENcryption.txt': No such file or directory
gpg: TestFileForENcryption.txt: encryption failed: No such file or directory
Wenn Es ist in der Lage, jede dieser Dateien zu lokalisieren, um die Namen während der GCI zu erhalten, warum heißt es, dass sie nicht existieren, wenn sie versuchen, eine Aktion an ihnen durchzuführen? Jede Hilfe wird geschätzt. Vielen Dank!
Danke für die Antworten! Mein Problem war zweifach: Als ich dieses Snippet manuell ausprobierte, tat ich das aus dem falschen Verzeichnis, das die "Keine solche Datei oder Verzeichnis" erklärte, die ich erhielt. Es wurde nicht vom Task Scheduler ausgeführt (was ich mit der Fehlersuche anfing), da beim Importieren des Schlüssels für etwas, das unbeaufsichtigt in gnupg ausgeführt wird, der Befehl -home-directory vor --import verwendet werden muss. – max