l4a-thompson
Goto Top

zwei befehele hinterein ander in einem string (Internet einwahl und /wait)

hallo und guten abend an alle.
die batch programierung macht mehr spaß als ich zeit habe *g*.
nun gut ich verwende diesen befehl um die dfü verbindung zu starten, nach den anführungs zeichen ist der befehl leider noch nicht zu ende. ich kann zwar eine pause mit dem ping befehl ausführen doch es ist nicht ganz das was ich mir vorstelle.

rasphone.exe -d "dfü verbindungsname"
ping 127.0.0.1 -n 7

nach dem ping string startet das nächste programm der befehl /wait gefällt mir hierfür sehr gut nur wie bekomme ich ihn hinter die anführungs zeichen ohne das /wait als parameter für "rasphone.exe" gilt

ich hab mal irgend wo gelesen das es mit & gehen soll aber weiß leider nicht mehr wo

Content-Key: 14078

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

Printed on: April 20, 2024 at 00:04 o'clock

Member: Biber
Biber Aug 06, 2005 at 23:52:32 (UTC)
Goto Top
Moin, L4a-Thompson,
bin nicht sicher, ob ich Deine Frage ganz richtig verstanden habe, aber ich schwafel mal drauflos..

Fast jeder interne CMD-Befehl (<font color=blue>REM; COPY, CD, DIR,... </font>), und ziemlich jedes auf DOS-Ebene ausführbare Programm (<font color=green> XCopy.EXE, RasPhone.exe, Ping.exe </font>) geben einen numerischen Rückgabewert zurück, auf Neudeutsch "Errorlevel" genannt. Der ist 0, wenn alles prima war, und ein von 0 unterschiedlicher Wert (1...bis 255) bei Fehlern.

Beispielsweise der "DIR"-Befehl.. wenn der mindestens eine Datei zum Anzeigen findet, liefert der ein Errorlevel 0, wenn er nichts findet, bringt er einerseits eine Zeile "Datei nicht gefunden" und andererseits ein Errorlevel 1. Ich versuch mal ein Beispiel zu konstruieren... angenommen, du wolltest in einem Batch prüfen ob die Datei Error.log vorliegt und diese ggf. anzeigen... (ich mach es ein bisschen umständlicher als nötig, geht mir um die Verkettungsbefehle).

Die Anweisung A soll sein: <font color=blue>(DIR Error.log >nul 2>1)</font> ....also ein Dir-Befehl, aber die Bildschirmausgabe in die Tonne, mögliche Fehlermeldungen auch.
A & B bedeutet: führe sowohl Anweisung A wie auch B aus:
<font color=blue>(dir Error.log>nul 2>1) & echo %errorlevel%</font> ........... mach mir den DIR und zeig auf jeden Fall den ErrorLevel an
A && B bedeutet: führe A aus; nur wenn keine Fehler, führe auch B aus:
<font color=blue>(dir Error.log>nul 2>1) && type Error.log</font> ........... mach mir den DIR und wenn der keinen Fehler hat, zeig mir die Error.log an.

So, zurück zu Deinem DFÜ-Krams... statt in zwei Zeilen:
<font color=blue>rasphone.exe -d "dfü verbindungsname"
ping 127.0.0.1 -n 7 </font>
kannst Du also auch in einer Zeile schreiben:
<font color=blue>(rasphone.exe -d "dfü verbindungsname" ) & (ping localhost -n 7 )</font> ... wenn auf jeden Fall beide Befehle ausgeführt werden sollen oder

Was Du mit dem "/wait" meinst, hab ich nicht verstanden, das sieht von hier aus wie ein Parameter, nicht wie ein Befehl?? *kopfkratz
Ratlos guckt
Frank / der Biber aus Bremen
Member: L4a-Thompson
L4a-Thompson Aug 07, 2005 at 18:18:50 (UTC)
Goto Top
danke für die antwort hat mir ein wenig weiter geholfen.
/wait hm wie soll ich sagen
ich starte ein programm

start d:\irgendwas.exe /wait der befehl (/wait) bewirkt das erst zum nächsten string gesprungen wird bis die anwendung wieder geschlossen ist

z.b. es öffnet sich eine txt datei und danach soll eine doc datei geöffnet werden so öffnet sich erst die doc wenn die txt von mir wieder geschlossen wird
Member: Biber
Biber Aug 07, 2005 at 21:56:46 (UTC)
Goto Top
Na, L4a-Thompson,
jetzt weiß, worum es geht... *vornKoppklatscht

Da hätte ich mich ja 500 Worte kürzer fassen können.. also:
statt:
start d:\irgendwas.exe /wait ... ...einfach
start /wait d:\irgendwas.exe /und /alle /27 /Parameter:"der irgendwas.exe"

Biber
Member: L4a-Thompson
L4a-Thompson Aug 08, 2005 at 18:05:13 (UTC)
Goto Top
ok das würde schon mal gar nicht funktionieren weil wenn er wait als parameter für die erste exe sieht geht es nicht es muß als eigenständige option stehen und einzeln in der nächsten zeile geht auch nicht ka was es wirklich damit auf sich hat aber hin und wieder kann man wait mal gebrauchen z.b. wenn man mehere programme instaliert das es erst zum nächsten prg geht wenn das erste fertig und wieder geschloßen ist aber in meinem fall hab ich es einfach weggelassen geht komischer weiße auch
vieleicht bekomm ichs irgend wann mal hin wenn ich mehr erfahrung hab
Member: Biber
Biber Aug 08, 2005 at 18:30:47 (UTC)
Goto Top
Hm, L4a-Thompson,

die Windows-Hilfe zum Thema Start sagt aber:
D:\temp>start /?
Startet ein eigenes Fenster, um ein bestimmtes Programm oder einen Befehl
auszuführen.

START ["Titel"] [/Dpath] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NORMAL | /HIGH | /REALTIME] | /ABOVENORMAL | /BELOWNORMAL]
[/WAIT] [/B] [Befehl/Programm]
[Parameter]

...sollte es eigentlich auch beim RasPhone- Aufruf tun..
Member: L4a-Thompson
L4a-Thompson Aug 08, 2005 at 19:20:11 (UTC)
Goto Top
wenn ich /wait bei RasPhone ein setze sagt mir die cmd
"RasPhone /wait" ist ungültig oder falsch geschrieben
Member: Biber
Biber Aug 08, 2005 at 19:34:47 (UTC)
Goto Top
Und wenn Du schreibst :
start /wait d:\pfad\zur\exe\Rasphone -d "dfü verbindungsname" ...??
Member: L4a-Thompson
L4a-Thompson Aug 09, 2005 at 09:25:22 (UTC)
Goto Top
/wait ist ungültig oder falsch geschrieben *g*
ich glaube das geht einfach nicht in dieser situation