Seite 1 von 1

[GELÖST] Batch-Dateien ausführen

Veröffentlicht: 22. August 2022 – 13:42 Uhr
von HugoDams
Guten Morgen,
Ich verwende WAPT 2.2.1 in einer reinen Windows-Umgebung.

Ich möchte eine .bat-Datei mit einer sehr einfachen Befehlszeile ausführen:

Code: Alle auswählen

ipconfig /all > Y:\SimonP\MAC\%username%.txt



Hier ist das von mir zusammengestellte Paket (ganz einfach):

Code: Alle auswählen

# -*- coding: utf-8 -*-
from setuphelpers import *

def install():
    run("ipconfig.bat")
Folgende Fehlermeldung erhalte ich:

Code: Alle auswählen

*** Remote Interpreter Reinitialized ***
Command Line : install "c:\waptdev\dams-ipconfig_0_PROD-wapt\WAPT\.."
Using config file: C:\Program Files (x86)\wapt\wapt-get.ini
Installing WAPT files c:\waptdev\dams-ipconfig_0_PROD-wapt
2022-08-22 11:47:00,203 CRITICAL Fatal error in install script: CalledProcessErrorOutput: Command 'ipconfig.bat' returned non-zero exit status 1.
Output:
c:\waptdev\dams-ipconfig_0_PROD-wapt>ipconfig /all  1>Y:\SimonP\MAC\h.veyrent.txt 
The system cannot find the path specified.
:
Traceback (most recent call last):
  File "C:\Program Files (x86)\wapt\common.py", line 4035, in install_wapt
    exitstatus = setup.install()
  File "c:\waptdev\dams-ipconfig_0_PROD-wapt\setup.py", line 5, in install
    run("ipconfig.bat")
  File "C:\Program Files (x86)\wapt\common.py", line 3817, in run
    return ensure_unicode(run(*arg, pidlist=self.pidlist,**args))
  File "C:\Program Files (x86)\wapt\waptutils.py", line 2126, in run
    raise CalledProcessErrorOutput(proc.returncode, cmd, ''.join(output))
waptutils.CalledProcessErrorOutput: Command 'ipconfig.bat' returned non-zero exit status 1.
Output:
c:\waptdev\dams-ipconfig_0_PROD-wapt>ipconfig /all  1>Y:\SimonP\MAC\h.veyrent.txt 
The system cannot find the path specified.


FATAL ERROR : CalledProcessErrorOutput: Command 'ipconfig.bat' returned non-zero exit status 1.
Output:
c:\waptdev\dams-ipconfig_0_PROD-wapt>ipconfig /all  1>Y:\SimonP\MAC\h.veyrent.txt 
The system cannot find the path specified.

Exit code:  3
>>> 
Ich kann zu „Exit code: 3“ nichts Konkretes finden...
Was habe ich falsch gemacht, oder was habe ich vergessen?
Ich habe die .bat-Datei korrekt im Paket platziert (wie bei einer .msi- oder .exe-Installation), die manuell gestartete .bat-Datei funktioniert und sendet das Ergebnis korrekt an das freigegebene Verzeichnis.

DANKE
Guten Tag,
Hugo

Betreff: Batch-Dateien ausführen

Veröffentlicht: 22. August 2022 – 15:00 Uhr
von dcardon

Code: Alle auswählen

c:\waptdev\dams-ipconfig_0_PROD-wapt>ipconfig /all  1>Y:\SimonP\MAC\h.veyrent.txt 
The system cannot find the path specified.
Wie die Meldung andeutet, existiert Y:\ wahrscheinlich nicht im Ausführungskontext.

Aufrichtig,

Denis

Betreff: Batch-Dateien ausführen

Veröffentlicht: 22. August 2022 – 15:33 Uhr
von HugoDams
Hallo Denis,
Y: ist ein Netzlaufwerk; es existiert, aber das Skript muss die Textdatei anhand des Benutzerprotokolls erstellen (in meinem Fall h.veyrent.txt).
Dieses Laufwerk ist für alle ohne Einschränkungen zugänglich (es ist unser Tageslaufwerk).

Hugo

Betreff: Batch-Dateien ausführen

Veröffentlicht: 22. August 2022 – 15:38 Uhr
von HugoDams
Mein Fehler, es funktioniert mit meinem C:\-Laufwerk...
Können die Pakete nicht ins Netzwerk geschrieben werden?
Falls Sie eine andere Lösung kennen, um die MAC-Adressen der PCs mithilfe des Benutzerprotokolls über WAPT zu ermitteln, wäre ich Ihnen dankbar, da die Konsole zwar alle MAC-Adressen anzeigt, wir aber nur die aktive benötigen.
Danke,
Hugo

Betreff: Batch-Dateien ausführen

Veröffentlicht: 22. August 2022 – 15:56 Uhr
von dcardon
HugoDams schrieb: 22. August 2022 - 15:38 Uhr Mein Fehler, es funktioniert mit meinem C:\-Laufwerk...
Die Pakete können nicht ins Netzwerk geschrieben werden?
Der Kontext des SYSTEM-Kontos ist nicht derselbe wie der des Benutzers; es hat keine Kenntnis von Y:\

Man kann einen Reader im SYSTEM-Kontext einbinden, aber das ist nicht spezifisch für WAPT (und ich würde sagen, es ist nicht besonders elegant).
Falls Sie eine andere Lösung haben, um die MAC-Adresse von PCs mithilfe des Benutzerprotokolls über WAPT zu ermitteln, bin ich ganz Ohr, denn über die Konsole erhalten wir zwar alle MAC-Adressen, benötigen aber nur die aktive.
In der Enterprise-Version können Sie die Audit-Funktion nutzen, um regelmäßig Daten abzurufen, beispielsweise eine ipconfig-Datei.

In der Discovery-Version können Sie, falls es sich um einen einmaligen Bedarf handelt, ein Paket mit einer def install() erstellen, die die Funktion aufruft, das Ergebnis abrufen und anschließend das Paket deinstallieren.

Aufrichtig,

Denis