Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Batch lässt sich nicht aus Powershell-Script starten

Frage Entwicklung Batch & Shell

Mitglied: complex

complex (Level 1) - Jetzt verbinden

14.01.2015, aktualisiert 09:29 Uhr, 1769 Aufrufe, 4 Kommentare

Guten Morgen Jungs!

stehe vor einem kuriosen Problem und hoffe, ihr könnt mir helfen.
Eins vorne Weg: Ich weiß es gibt leichtere Methoden, welche ich aber schon ausschließen konnte. Ich muss leider diesen komplizierten weg gehen:

Ich möchte ein Bios-Update als Task-Sequenz setzen und bin in diesem Zug um ein Script nicht herum gekommen.
Da das HP-Bios Update-Tool gar nicht gerne mit geänderten Datei-Name der Bios-Files arbeitet, stehe ich vor dem Problem, dass bei jedem Update sich der Filename ändert.

Auszug aus dem Script:

01.
#hier wird zuvor die gecryptete passwort-Datei erstellt. da bei uns jedes Firmen-Laptop ein anderes Bios-Passwort besitzt, muss dies zuvor in der variable $Password erstellt werden und als Biospswd.bin ausgegeben (funktionsfähig!) 
02.
& ".\HpqPswd.exe" /p"$password" /f".\Biospswd.bin" /s   
03.
 
04.
#bios-file definieren, da sich der Filename mit jedem Update ändert.  
05.
$binfile = Get-ChildItem *bin -Exclude Biospswd* -Name   
06.
 
07.
#batch-Datei erstellen und Inhalt einpflegen 
08.
"@echo off  
09.
HPBIOSUPDREC64.exe -pBiospswd.bin -f$binfile -s -b" | Out-File update.bat -Force   
10.
 
11.
#zuvor erstellte .bat ausführen 
12.
start .\update.bat  
die .bat-Datei wird mit dem Inhalt

"@echo off
HPBIOSUPDREC64.exe -pBiospswd.bin -f$binfile -s -b"

erstellt (variable wird ebenfalls mit dem Dateinamen des Bios-Updates übergeben - und ja, es gehört KEIN Leerzeichen zwischen den Commandline-Befehlen), kann aber nicht ausgeführt werden ("Der Befehl "■" ist entweder falsch geschrieben oder konnte nicht gefunden werden").
Jetzt der Clou: kopiere ich den Befehl aus der generierten Batch, füge ihn in ein leeres txt-dokument ein und ändere es zu Batch - funktioniert es...

Was mir ebenfalls aufgefallen ist:
Die durch das Script generierte batch-Datei hat eine größe von 118 Byte. die manuelle über das text-dokument erstellte .bat hat 58 Byte. Wie kann das sein?

Vielen Dank schon mal für eure Hilfe.
Mitglied: emeriks
LÖSUNG 14.01.2015, aktualisiert um 09:29 Uhr
Hi,
Du musst die Batch als ASCII speichern. Dann sollte es gehen.

E.
Bitte warten ..
Mitglied: AndreasHoster
LÖSUNG 14.01.2015, aktualisiert um 09:29 Uhr
Punkt Dateigröße: Schonmal was von Unicode/UTF gehört?
Probiere es doch mal mit
01.
Out-File update.bat -Force -Encoding ascii
Ansonsten, warum eine Batchdatei erstellen und die dann starten?
Warum nicht gleich mit Start-Process den Prozess gleich starten?
Bitte warten ..
Mitglied: complex
14.01.2015, aktualisiert um 09:33 Uhr
ohman...*kopf->tisch* vielen vielen Dank!!!
funktioniert - danke
Bitte warten ..
Mitglied: complex
14.01.2015 um 10:22 Uhr
hast recht. hatte es spaßeshalber mit "cmd /c HPBIOSUPDREC64.exe -pBiospswd.bin -f$binfile -s -b" probiert. hätte in dem Fall natürlich auch funktioniert
PS: bin absoluter PS-Einsteiger - nicht böse sein wenn ich viele Sachen nicht kenne
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Batch & Shell
gelöst PC nach einem Kopiervorgang herunterfahren - PowerShell Script? (4)

Frage von Stefan007 zum Thema Batch & Shell ...

Windows Server
PowerShell Script - Ordnerrechte setzen (7)

Frage von desmondjames zum Thema Windows Server ...

Batch & Shell
gelöst Powershell Script mit Zertifikat signieren (5)

Frage von zamsi7 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (24)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Netzwerke
Abisolierwerkzeug (11)

Frage von SarekHL zum Thema Netzwerke ...

Hyper-V
Langsames Netzwerk i210 LAN Karte (11)

Frage von Akcent zum Thema Hyper-V ...

Windows Server
Server 2016 - Kuriositäten (8)

Frage von certifiedit.net zum Thema Windows Server ...