Jump to content

Batch-Datei


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Na ja, dann muß auf der entfernten Kiste etwas darauf warten, daß Deine Batch auf Deiner Workstation was meldet. Spontan auf die Schnelle gefrickelt: Batch auf der entfernten Kiste erweitern:

@ECHO OFF

IF NOT EXIST C:\TEST\Tuwas.txt GOTO Ende

IF EXIST C:\TEST\Tuwas.txt DEL C:\TEST\Tuwas.txt > NUL

... Dein Batchcode ...

:Ende

 

Die Batch läßt Du dann via Scheduler z.B. alle 10 Minuten laufen oder Du baust noch ein Loop und ein Wait ein und läßt das Dingen ständig laufen.

 

Auf Deiner Workstation-Batch fügst Du z.B. die Zeile

Time /T > \\Rechner\c$\Test\Tuwas.txt

ein (bzw. nutzt statt c$ eine normale Freigabe).

Gegrüßt!

Link zu diesem Kommentar

Also mit Onboardmitteln eine Batch auf einem entfernten Rechner zu starten, habe ich auch schon mal erfolglos probiert/experimentiert.

 

Wenn, dann könnte ich mir vorstellen, aus dem script mit srvany einen Dienst zu machen, den du mit net start \\workstation dienst startest und mit net stop wieder beenden kannst.

 

Vielleicht stellst du dahingehend einaml Versuche an :wink2:

Link zu diesem Kommentar

Hi FirstTime!

Das mit \\Rechner\Test.BAT kann auch nicht funktionieren. Wenn Du als Admin angemeldet bis und die administrativen Freigaben eingeschaltet hast und nutzen willst (was alles nicht so prickelnd ist), dann muß es

\\Rechner\c$\Test.BAT heißen.

Ansonsten brauchst Du auf dem entfernten Rechner eine Freigabe und für Deinen Account auch das Recht, die Datei zu schreiben. Wenn Du den Standardvorgaben bei der Freigabe folgst (Explorer/Rechtsklick/Freigabe), richtest Du auf C:\Test eine Freigabe unter dem Namen Test ein. Wenn das der Fall ist (also TEST nicht nur der Ordner, sondern auch der Freigabename ist), dann muß es

\\Rechner\Test\Test.bat heißen.

So bekommst Du die Datei auf den entfernten Rechner geschrieben.

 

Du mußt ja nicht diese Freigabe auf der Remotekiste nutzen. Wenn Du irgendeine Freigabe im Netz hast, auf die sowohl Du von Deiner Workstation aus als auch angemeldete user auf der Remotekiste zugreifen können, dann nimmst Du halt die als Ort für die Time /T - Ausgabe. Die Datei funktioniert ja nur wie ein Schalter und was da drin steht, ist völlig egal.

 

Das mit dem Warten ist ja nun mal eine Eigenart der Batche, die einfach von oben nach unten abgearbeitet werden. Wenn nun die Batch auf dem entfernten Rechner immer dann was tun soll, wenn Dir an Deiner Workstation danach ist, muß sie auf ein Steuersignal von Dir warten. Und leider gibt es einen Befehl wie "Warte, bis die Zeichenfolge xyz an Port 1234 ankommt", nicht.

Und weil die Batch auf Deiner Remotekiste ja nicht wissen kann, wann Du an Deiner Workstation den Befehl losschickst, muß sie ständig nachhorchen.

 

Und das ständige Nachhorchen kriegst Du z.B. dadurch hin, daß jedesmal, wenn die Batch abgearbeitet ist, sie wieder mit einem GOTO von Vorne losgeht ... dann mußt Du sie aber auch abwürgen. Oder aber Du bestimmst, daß sie alle 10 Minuten nachschauen soll, ob Du eventuell was wolltest. Dazu nimmst Du dann den Scheduler und läßt den die Batch z.B. alle 10 Minuten aufrufen. Hast Du dann die Tuwas.txt rübergeschickt, witd das erkannt, der Sprungbefehl ans Ende wird nicht ausgeführt, mit der nächsten Zeile wird die Tuwas.txt wieder gelöscht und dann folgt Dein Batch-Codei, den die Maschine ausführen soll.

Hattest Du keinen Anstoß gegeben, existiert die Tuwas.txt nicht und die Batch verzweigt mit dem GOTO Ende eben ans Ende, um ohne weitere Aktion zu schließen. Na ja, und dann nach 10 Minuten z.B: wird sie wieder aufgerufen.

 

Gegrüßt!

Link zu diesem Kommentar

Danke für die ausführliche Hilfe!!

 

Ok, mit der Freigabe und psexec kriege ich die Batch-Datei nun angestossen... Es folgt prompt das nächste Problem, was aber bei lokaler Ausführung nicht auftritt...

 

In dieser Batch ist eine *.exe Datei die ausgeführt werden soll... Die exe kann in verschiedenen Modi aufgerufen werden... Z.B.test.exe A, test.exe B.. Damit kommt psexec nicht klar und veursacht eine Fehlermeldung, dass er test.e.exe nicht ausführen kann.. Sprich er interpretiert die Schreibweise test.exe A falsch...

 

Die Batch-Datei per Freigabe und der DOS-Befehlsreferenz, scheitert auch am Aufrufen der *.exe... Er findet den Pfad nicht.. Kann ja mit der Problematik zusammen hängen die Finanzamt beschrieben hat..

 

Vielleicht hat ja jemand noch eine Idee zu den aufgetretenen Problemen oder sogar eine Lösung.!.? :)

 

Gruss und Danke

Link zu diesem Kommentar

Moin!

Wenn der Batchaufruf am nicht gefundenen Pfad scheitert, dann brauchst Du den nur nachzutragen. Weil es ja eine Remotekiste ist, am besten unter Adminanmeldung "Arbeitsplatz" rechtsklicken, "Eigenschaften", "Erweitert" und dann unter "Systemvariable" die Variable Pfad suchen, highlighten und "bearbeiten" klicken. Dann hängst Du [;D:\Programme\VerzeichnisDerExe] an.

Wenn Du das nicht möchtest, änderst Du die Batch und springst zum Verzeichnis der .EXE und anschließend wieder zurück. Bsp:

...

D:

CD\Programme\VerzeichnisDerExe

MeineExe Parameter

C:

CD\TEST

...

Wobei Du eben statt D:\Programme\VerzeichnisDerExe das Einträgst, was bei Dir Sache ist.

Gegrüßt!

Link zu diesem Kommentar

Ja, die *.exe soll auf dem Remoterechner ausgeführt werden... Ich kann mir ehrlich gesagt bezüglich psexec nicht erklären, warum ich lokal die Batch ausführen kann und die exe einwandfrei ausgeführt wird, aber nicht wenn ich das ganze über psexec und Netzwerk anstosse..

 

 

@Finanzamt..

Den Pfad nachtragen bzw das Bearbeiten der Batch... Das passiert auf dem Remoterechner, richtig?

 

Gruss und Danke

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...