PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Leerstellen in Batch Datei ?


baer999
27.12.2004, 20:56
@echo off
setlocal
set PATHTOFIXES = C:\Dokumente und Einstellungen\XXXX\Desktop\Neuer Ordner
echo.
echo ######### Starte Installation der Updates ###########
echo.
%PATHTOFIXES%\WindowsXP-KB835732-x86-ENU.EXE
echo 1 Update von 2 Updates abgearbeitet
%PATHTOFIXES%\WindowsXP-KB884020-x86-enu.exe
echo 2 Update von 2 Updates abgearbeitet
%PATHTOFIXES%\qchain.exe
echo.
echo Updates hoffentlich alle erfolgreich installiert ! :)
echo.
pause
exit


habe das Problem, dass man die Leerzeichen net lesen kann und er deshalb net die Datei findet, was kann man da tun ?


Fadan
27.12.2004, 21:00
keine langen pfadnamen, also zB. "DOKUM~1/XXXX/.." - die alten Zeiten sind etwas her bin mir jetzt nicht 100% sicher wieviel bytes die namen beinhalten dürfen

BerettaM92
27.12.2004, 21:03
die dateinamen in anführungszeichen schreiben, so gehts in dos sollte eben auch bei batch dateien so ein.

baer999
27.12.2004, 21:04
Und wie siehts beim "neuer ordner" aus ? wie kürze ich des ab ?

baer999
27.12.2004, 21:29
Ja des mit den Anfrührungszeichen hab ich versucht, aber ging net...

BerettaM92
27.12.2004, 21:33
mach nen unterstrich anstatt dem leerzeichen...

oder abgekürzt Neuer~1

baer999
27.12.2004, 21:37
Geht beides net... er findet den Pfad nicht... geht das überhaupt, zb bei dem Ordner "Dolkumente und Einstellungen" ist es doch eigentlich sehr wichtig ! Kann man das unter XP gescriptete auch unter 2000 nutzen ?

BerettaM92
27.12.2004, 22:15
ob man das in w2k benutzen kann weiß ich nicht, wenn die verzeichnisstruktur anders si gehts natürlich nicht, müsstest dann angepasste batch dateien haben.

habe mal gegooglet und bin auf ein paar dinge gestoßen:

- anstatt leerzeichen ein % schreiben
- pfadangaben in " " (hast schon gesagt funzt ned)
- deine batch mit dem dos editor "edit" schreiben, da die meisten editoren andere zeichensätze verwenden
(edit rufst du in der kommandozeile auf, einfach edit eingeben)

versuch das mal ansonsten weiß ich nichtmehr weiter

baer999
28.12.2004, 17:09
Also des geht alles net hab auch ewig im Inet gesucht aber ging net, jetzt hab ich n anderes prob, ich wollte mit ner Batch die Version von Windows ausgeben und prüfen...
ver | find "Windows <<Version>>" >nul
aber des geht net ? warum weiss einer was ich wie machen muss ? thx

panzi
28.12.2004, 17:14
Ich denk zwischen Variablennamen, = und Wert dürfen keine Leerzeichen sein:
PATH="/usr/bin:/bin"

aber hab kA ob das in DOS tatsächlich so ist, ist unter UNIX so.

pate33
30.12.2004, 16:54
ebenfalls falsches forum ...

~ moved from c/c++ ~

Scavi
31.12.2004, 11:42
Das Homeverzeichnis steht im Environment unter %HOMEPATH%. Da brauchst du nur noch deinen Ordner ranhängen, dann müßte er auch alles finden.

baer999
31.12.2004, 13:47
Geht das auch unter Win 2000 oder nur bei Win XP ?

Scavi
31.12.2004, 17:09
Ausprobieren?!