Webmaster Forum Logo Part 1 Webmaster Forum Logo Part 2
Webmaster Forum Logo Part 3
     
 
  :: Anmeldung

Benutzername:

Registrierung...

Passwort:

Passwort vergessen?

angemeldet bleiben


  
  :: Umfrage
Welche sozialen Netzwerke benutzt du regelmäßig?

 Facebook
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 73%
 keines
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 22%
 Google+
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 19%
 Twitter
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 11%
 Xing
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 schülerVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 6%
 meinVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 studiVZ
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 4%
 MySpace
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%
 LinkedIn
 Webmaster - WebspaceWebmaster - WebspaceWebmaster - Webspace 2%

 ges. 393 Stimmen
 
  :: Buttons

Valid XHTML 1.0 Transitional

Lainix

Tripel-As

Dabei seit: 23.05.2008

Beiträge: 195

 

1 Zum Seitenanfang

Donnerstag, 23. September 2010, 23:28

batch anfänger

moin
ich habe folgenden batchcode.

echo off
cls
:marke1
REM Schreibe Text 5 Mal
for /L %%N IN (1, 1, 5) DO echo Nummer %N
ping /a 127.0.0.1 -n 1
color a4
ping /a 127.0.0.1 -n 1
color 24
ping /a 127.0.0.1 -n 1
color 4f
ping /a 127.0.0.1 -n 1
color d9
if N==5 goto :marke2
goto marke1
:marke2
echo manoman

PAUSE

Nun, irgendwie geht es nicht.
zum einen wird das N nich geändert
zum zweiten ist der pausenbefehl mist.
Work in progress

HTML

1
<a href="Page">www.lainix.de</a>
 

Ego

Routinier

Dabei seit: 22.07.2009

Beiträge: 322

 

2 Zum Seitenanfang

Freitag, 24. September 2010, 10:02

Hallo,

leider hab ich mit Batchprogrammierung nicht viel am Hut - aber das hilft schon weiter:
http://de.wikibooks.org/wiki/Batch-Progr…:_Batch-Befehle

So mal schauen was das Script macht ...

Quellcode

1
2
3
echo off
cls
:marke1
hier bildschirm löschen, und ne Sprungmarke setzen

Quellcode

1
for /L %%N IN (1, 1, 5) DO echo Nummer %N
wenn du vorm 2ten N ein weiteres % zuschreibst hast du ne FOR-Schleife die (Nummer 1, Nummer 2 ... Nummer 5) ausgibt

Quellcode

1
2
3
4
5
6
7
8
ping /a 127.0.0.1 -n 1
color a4
ping /a 127.0.0.1 -n 1
color 24
ping /a 127.0.0.1 -n 1
color 4f
ping /a 127.0.0.1 -n 1
color d9
naja, hier jeweils 4mal Localhost anpingen
und die Console in Augenkrebsfördernde Farben schmücken

Quellcode

1
2
3
if N==5 goto :marke2
goto marke1
:marke2
merkwürdige Syntax, da fehlen die %, und ich weis nicht ob die Variable ausserhalb der FOR-Schleife verfügbar ist
auf jeden Fall springt er hier IMMER wieder zu Marke1 -> Endlosschleife

Quellcode

1
2
3
echo manoman

PAUSE
der Code wird NIE ausgeführt.

Bleiben die Fragen, was willst du mit dem Script mal anstellen? und Warum ist der Befehl Pause mist?

Gruß
Ego
 

Lainix

Tripel-As

Dabei seit: 23.05.2008

Beiträge: 195

 

3 Zum Seitenanfang

Freitag, 24. September 2010, 20:30

Hallo, erstma danke für die ausführliche Kommunikation.
Der Befehl Pause stört mich, weil er bei mir nicht ausugeführt wird.
Dieser Fehler kann allerdings am Laptop liegen, ich sitz an einem
sehr abgespeckten Windows XP mit 433Mhz und ich kenne die
Version des System nicht. Wenn seit Windows aber ein allgemeiner
Standart gilt und es keine /Unterschiede gibt, dann weiss ich nicht
woran es liegt. Ich habe auch schon Pause>0 versucht.
Work in progress

HTML

1
<a href="Page">www.lainix.de</a>

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Lainix« (24. September 2010, 20:30)

 

okki

unregistriert

4 Zum Seitenanfang

Samstag, 25. September 2010, 10:13

es gab auch irgendwie mal nen befehl um tasteneingaben zu erfassen. leider sind meine batch anfänge etwas lange her :-) aber im internet fand ich den befehl "SET /P...". vielleicht funktioniert der ja bei deiner XP version, evt. kannst du mit

Quellcode

1
set /p NUL
den "pause" befehl nachahmen...

grüße okki
 

Jadefalke

Routinier

Dabei seit: 29.02.2008

Beiträge: 431

 

5 Zum Seitenanfang

Montag, 27. September 2010, 13:22

Also erst mal solltest du auf den Hinweis eingehen das du eine Endlosschleife aufgebaut hast ;) da kommt Pause erst garnicht zum tragen :)

alles nach goto Marke1 wird nicht mehr bearbeitet!

Ich würde den for befehl so abändern :

for %%i in (1 2 3 4 5 ) do net send %1 %2

Dann sollte dein Ping genau 5x ausgegeben werden!

Ich würde mich aber mit Batch nicht so abmühen sondern hier auf eine andere Windowssprache zurückgreifen

set wscr = createobject("wscript.shell")
ziel=inputbox("Bitte ZielHost eingeben")
inhalt=inputbox("Bitte Nachricht eingeben")
anzahl=inputbox("Wieviele Nachrichten versenden?[keine Angabe = permanent senden]")
if anzahl = "" then
do
wscr.run("net send " & ziel & " " & inhalt)
loop
else
for i = 1 to anzahl
wscr.run("net send " & ziel & " " & inhalt)
next
end if

Edit >Ach so habe die sprache vergessen die Sprache anzugeben = VB Script :)
OK keine Augenkrebsfarben aber ansonsten sollte das so Funktionieren wie du es oben haben möchtest!

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Jadefalke« (27. September 2010, 13:22)