Warum gibt mein Go-Code ständig „Exit-Status 1' aus?

Patricia Arquette
Freigeben: 2024-11-16 02:36:03
Original
176 Leute haben es durchsucht

Why Does My Go Code Keep Throwing

So beheben Sie den Fehler „Exit Status 1“ in Golangs exec.Command

Bei der Verwendung von exec.Command in Golang kann es zu einem Problem kommen Unspezifischer Fehler „Exit-Status 1“, der die Debugging-Bemühungen behindert. Um detailliertere Informationen zu erhalten:

Greifen Sie auf die Stderr-Ausgabe des Befehls zu

Das Command-Objekt enthält eine Stderr-Eigenschaft, die Fehlermeldungen des ausgeführten Befehls erfasst. Ändern Sie Ihren Code, um die stderr-Ausgabe in eine Variable umzuleiten:

var stderr bytes.Buffer
cmd.Stderr = &stderr

err := cmd.Run()
if err != nil {
    fmt.Println(fmt.Sprint(err) + ": " + stderr.String())
    return
}
Nach dem Login kopieren

Wenn Sie diesen erweiterten Code ausführen, erhalten Sie eine umfassendere Fehlermeldung, z. B.:

exit status 1: find: -exec: no terminating ";" or "+"
Nach dem Login kopieren

Dadurch wird klargestellt, dass der Fehler auf einen Fehler zurückzuführen ist von einem ungültigen Befehl.

Behandlung von nicht standardmäßigen Fehlern Verhalten

Beachten Sie, dass einige Befehle vom erwarteten Verhalten abweichen können, indem sie Fehler an stderr ausgeben und einen Exit-Code ungleich Null zurückgeben. Bestimmte Befehle, wie ffmpeg, geben Fehler möglicherweise an stderr aus, geben jedoch den Exit-Code 0 zurück. Darüber hinaus geben einige Befehle Fehler möglicherweise an stdout statt an stderr aus.

Um diese Variationen zu berücksichtigen, müssen Sie möglicherweise den Code anpassen oben, um die von Ihnen verwendeten spezifischen Befehle und das erwartete Fehlerbehandlungsmuster zu berücksichtigen.

Das obige ist der detaillierte Inhalt vonWarum gibt mein Go-Code ständig „Exit-Status 1' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage