bonaire
Goto Top

Batch und Kommandosubstitution

Hallo,


ich schreibe gerade ein Skript, dass unter anderem eine Instanz von Word ausführen soll. Um die Datei Winword.exe zu finden, nutze ich folgenden Befehl

reg query HKCR\Applications\Winword.exe\shell\edit\command /ve | cut -d \" -f 2 -s  

Jetzt erhalte ich zwar den korrekten Pfad der Installation zurück, nur leider weiß ich nicht, wie ich das Rückgabeergebnis jetzt ausführen kann. Ich komme aus dem Linuxlager und da geht das ja einfach mit $(...), aber wie macht man sowas in der Batch?
In eine Datei schreiben, scheidet leider aus, weil das Skript nur von CD laufen soll.

Hat da jemand eine Idee?


cu

Content-Key: 83880

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

Printed on: April 25, 2024 at 16:04 o'clock

Member: miniversum
miniversum Mar 25, 2008 at 17:19:33 (UTC)
Goto Top
Der Befehl funktioniert so auch nicht den das cut ist standardmäsig in Windows nicht bekannt.
Um ausgaben oder Teile davon weiter verarbeiten zu können gibt es den For befehl.
Das ganze sieht dann so aus:

FOR /F "skip=4; tokens=2* delims=" %%i in ('reg query HKCR\Applications\Winword.exe\shell\edit\command /ve') do set wordaufruf=%%i
echo %wordaufruf%

genaueres zum forbefehl findest du mit for/?
Member: bonaire
bonaire Mar 25, 2008 at 17:59:59 (UTC)
Goto Top
Hallo,

und vielen Dank! Das funktioniert wie gewünscht. Cut hatte ich mir als Programm besorgt, das nativ unter Windows läuft.

cu