meisterkunglao
Goto Top

Folgenden Powershell Befehl in Batch ausführen geht nicht

Hey Leute, hat einer eine Idee, warum der Befehl:

Get-ChildItem 'd:\ordner' -File -Filter *.lnk | select -First 10 | Get-Random -Count 10 | %{Start-Process $_.Fullname}      
innerhalb von Powershell problemlos funktioniert, aber wenn ich ihn in einer Batch ausführen möchte, geht es nicht:

powershell -ExecutionPolicy ByPass -Command "Get-ChildItem 'd:\ordner' -File -Filter *.lnk | select -First 10 | Get-Random -Count 10 | %{Start-Process $_.Fullname}"  

Content-Key: 61107297113

Url: https://administrator.de/contentid/61107297113

Printed on: June 21, 2024 at 06:06 o'clock

Member: hempel
Solution hempel Jun 10, 2024 updated at 18:53:01 (UTC)
Goto Top
Tipp: Prozentzeichen bezeichnen Variablen in Batch....
powershell -ExecutionPolicy ByPass -Command "Get-ChildItem 'd:\ordner' -File -Filter *.lnk | select -First 10 | Get-Random -Count 10 | %%{Start-Process $_.Fullname}"    
Batch Escape Characters

Oder halt kein Alias nehmen
powershell -ExecutionPolicy ByPass -Command "Get-ChildItem 'd:\ordner' -File -Filter *.lnk | select -First 10 | Get-Random -Count 10 | foreach-object {Start-Process $_.Fullname}"    
Member: MeisterKungLao
MeisterKungLao Jun 10, 2024 at 22:36:16 (UTC)
Goto Top
Mega danke dir jetzt klappts!
Member: ThePinky777
ThePinky777 Jun 11, 2024 updated at 16:11:16 (UTC)
Goto Top
Oder, Powershellbefehle immer in PS1 Datei (Powershell Script) speichern, und dann per Batch die PS1 Datei ausführen,
dann hat man ne klare trennung der Script sprachen.

"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -executionpolicy Unrestricted -File "C:\PowerShellScript.ps1"