Seite 1 von 1

[GELÖST] run(cmd) gibt einen Fehler zurück

Veröffentlicht: 28. Januar 2020 – 19:09 Uhr
von Empbilly
Guten Morgen,

Code:

Code: Alle auswählen

for soft in installed_softwares("NetBeans"):
        try:
            cmd = WAPT.uninstall_cmd(soft['key'])
            if len(cmd) == 2:
                cmd = cmd[0]
            if not '--silent' in cmd:
                cmd = cmd + ' --silent --state {}state.xml'.format(path)
                print(cmd)
                run(cmd)
        except ValueError:
            print('An error occured!')
Ich führe eine Testinstallation von PyScripter durch, aber die Eingabeaufforderung (cmd) gibt folgenden Fehler zurück:

Code: Alle auswählen

CalledProcessErrorOutput: Command 'C:\\Program Files\\NetBeans-11.2\\uninstall.exe --silent --state C:\\ProgramData\\state.xml' returned non-zero exit status 1.
Ich glaube, das liegt daran, dass er "\\" zwei Querstriche hintereinander setzt.

Wie kann ich das lösen?

Re: run(cmd) gibt einen Fehler zurück

Veröffentlicht: 28. Januar 2020 – 20:22 Uhr
von Sfonteneau

Code: Alle auswählen

for soft in installed_softwares("NetBeans"):
        try:
            cmd = WAPT.uninstall_cmd(soft['key'])
            if len(cmd) == 2:
                cmd = cmd[0]
            if not '--silent' in cmd:
                cmd = '"%s" --silent --state "%s"' % (cmd,makepath(path,'state.xml'))
                print(cmd)
                run(cmd)
        except ValueError:
            print('An error occured!')
Können Sie das versuchen?

Re: run(cmd) gibt einen Fehler zurück

Veröffentlicht: 29. Januar 2020 - 12:26 Uhr
von Empbilly
Können Sie das versuchen?
Entschuldigung, ich habe Ihre Frage nicht verstanden! :D
...
cmd = '"%s" --silent --state "%s"' % (cmd,makepath(path,'state.xml'))
...
Bei lokalen Ausführungstests mit dem Psychiater hat es funktioniert.
Bild

Im Produktionsbetrieb werden die Backslashes "\\" wieder in den Softwarepfad eingefügt, was zu einem Fehler führt.

Code: Alle auswählen

CalledProcessErrorOutput: Command '"C:\\Program Files\\NetBeans-11.2\\uninstall.exe" --silent  returned non-zero exit status 1. 
Irgendwelche Ideen?

Re: run(cmd) gibt einen Fehler zurück

Veröffentlicht: 31. Januar 2020 – 14:50 Uhr
von Empbilly
Irgendwelche Hilfe?

Re: run(cmd) gibt einen Fehler zurück

Veröffentlicht: 7. Februar 2020 - 12:28 Uhr
von Empbilly
Die Leute auf Reddit helfen mir!! Jetzt ist alles wieder gut!!

Code: Alle auswählen

for soft in installed_softwares("NetBeans"):
        try:
            cmd = "{} --silent\
                -J-Dremove.netbeans.installdir=true \
                -J-Dremove.netbeans.userdir=true".format(soft['uninstall_string'])
            print("Uninstall string: {}".format(cmd))
            run(cmd)
        except ValueError:
            print('[ERROR] An error occured!\n')

Re: run(cmd) gibt einen Fehler zurück

Veröffentlicht: 11. Februar 2020 – 17:20 Uhr
von dcardon
Hallo Empbilly,
embilly schrieb: 7. Feb. 2020 - 12:28 Uhr Die Leute auf Reddit helfen mir!! Jetzt ist alles wieder gut!!

Code: Alle auswählen

for soft in installed_softwares("NetBeans"):
        try:
            cmd = "{} --silent\
                -J-Dremove.netbeans.installdir=true \
                -J-Dremove.netbeans.userdir=true".format(soft['uninstall_string'])
            print("Uninstall string: {}".format(cmd))
            run(cmd)
        except ValueError:
            print('[ERROR] An error occured!\n')
Tatsächlich sind es dieselben netten Leute von Tranquil IT, die sowohl Reddit (für englischsprachige Nutzer) als auch dieses Forum (für französischsprachige Nutzer) im Auge behalten ;-)

Denis