mac-duff 10 Geschrieben 15. Mai 2006 Melden Geschrieben 15. Mai 2006 Hi, und zwar habe ich in meinem Code ein paar Klammern, was Probleme bei dem echo Befehl verursacht. Hoffe mir kann da jemand helfen: bis denne @echo off IF EXIST "%temp%\login.sql" ( del "%temp%\login.sql" ) IF EXIST "%temp%\logintime" ( IF EXIST "%temp%\logindate" ( del "%temp%\logoutdate" del "%temp%\logouttime" for /F "tokens=1,2,3 delims=. " %%i in ('date/t') do set da=%%k-%%j-%%i echo %da%>>%temp%\logoutdate time /t >>%temp%\logouttime FOR /F %%i in (%temp%\logindate) do SET logindate=%%i FOR /F %%i in (%temp%\logintime) do SET logintime=%%i FOR /F %%i in (%temp%\logoutdate) do SET logoutdate=%%i FOR /F %%i in (%temp%\logouttime) do SET logouttime=%%i echo use pcusing;>>%temp%\login.sql echo insert into id (userid, pcid, logintime, logouttime) values ('%username%', '%computername%', '%logindate% %logintime%:00', '%logoutdate% %logouttime%:00');>>%temp%\login.sql del %temp%\logindate del %temp%\logintime del %temp%\logoutdate del %temp%\logouttime )) else ( echo use timemissing;>>%temp%\login.sql echo insert into timemissing (userid, pcid) values ('%username%', '%computername%');>>%temp%\login.sql ) Zitieren
lefg 276 Geschrieben 15. Mai 2006 Melden Geschrieben 15. Mai 2006 Hallo, was funktioniert denn nun nicht? Zitieren
mac-duff 10 Geschrieben 16. Mai 2006 Autor Melden Geschrieben 16. Mai 2006 Hi, die echo Ausgabe nicht. denke es liegt daran, dass ich da Klammern benutze, da der Fehler heißt: "values" ist syntaktisch an dieser Stelle nicht verarbeitbar. und values gehört ja eigentlich noch zur echo Ausgabe Zitieren
lefg 276 Geschrieben 16. Mai 2006 Melden Geschrieben 16. Mai 2006 Hallo, ersetze doch den Texte hinter echo jeweils durch etwas einfaches, ein Wort und teste es durch. An der Klammerung als solche sollte es nicht liegen. Ich habe das Skript natürlich nicht getestet. Viel Erfolg Edgar Zitieren
mac-duff 10 Geschrieben 16. Mai 2006 Autor Melden Geschrieben 16. Mai 2006 also bevor ich die IF Schleifen einbaute ging es. wenn ich den echo wert in " setzte geht es auch, hab dann nur leider in der Ausgabe " auch drinnen Zitieren
lefg 276 Geschrieben 16. Mai 2006 Melden Geschrieben 16. Mai 2006 Ich kann leider nicht helfen im Sinne von: Das geht so oder so. Du kannst versuchen die Textinhalte mit SET in eine variable zu bringen und diese mit Echo auszugeben. Möglicherweise liegt es aber doch an dieser mir etwas seltsam erscheinenden Konstruktion von Bedingung und Dual-Block. Wurde das schon mal anders probiert, nur mit einer Klammer? if ..... if ....( ......... ) Zum Verständnis, If ist keine Schleife, es ist eine Abfrage auf Erfüllung oder Nichterfüllung einer Bedingung. Zitieren
mac-duff 10 Geschrieben 16. Mai 2006 Autor Melden Geschrieben 16. Mai 2006 Ok, danke sehr. habs mir einem goto Befehl gelöst :) Zitieren
lefg 276 Geschrieben 16. Mai 2006 Melden Geschrieben 16. Mai 2006 Ok, danke sehr. habs mir einem goto Befehl gelöst :)Du kennst die Möglichkeit der struktierenten Programmierung, den Aufruf von Unterprogrammen mit Call innerhalb einer Batch und den Rücksprung mit goto :eof? Zitieren
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.