Rumah > pembangunan bahagian belakang > Golang > Mengapa Kod My Go Terus Membuang 'Status Keluar 1'?

Mengapa Kod My Go Terus Membuang 'Status Keluar 1'?

Patricia Arquette
Lepaskan: 2024-11-16 02:36:03
asal
269 orang telah melayarinya

Why Does My Go Code Keep Throwing

Cara Menyelesaikan Ralat "Keluar Status 1" dalam eksekutif Golang.Arahan

Apabila menggunakan exec.Command di Golang, anda mungkin menghadapi ralat "keluar status 1" bukan khusus yang menghalang usaha penyahpepijatan. Untuk mendapatkan maklumat yang lebih terperinci:

Akses Output Stderr Perintah

Objek Perintah termasuk sifat Stderr yang menangkap mesej ralat daripada arahan yang dilaksanakan. Ubah suai kod anda untuk mengubah hala output stderr kepada pembolehubah:

var stderr bytes.Buffer
cmd.Stderr = &stderr

err := cmd.Run()
if err != nil {
    fmt.Println(fmt.Sprint(err) + ": " + stderr.String())
    return
}
Salin selepas log masuk

Menjalankan kod dipertingkat ini akan memberikan mesej ralat yang lebih komprehensif, seperti:

exit status 1: find: -exec: no terminating ";" or "+"
Salin selepas log masuk

Ini menjelaskan bahawa ralat itu berpunca daripada arahan yang tidak sah.

Mengendalikan Gelagat Ralat Bukan Standard

Perhatikan bahawa sesetengah arahan mungkin menyimpang daripada kelakuan yang dijangkakan ralat pencetakan kepada stderr dan mengembalikan bukan sifar kod keluar. Arahan tertentu, seperti ffmpeg, mungkin mencetak ralat ke stderr tetapi mengembalikan kod keluar 0. Selain itu, sesetengah arahan mungkin mencetak ralat ke stdout dan bukannya stderr.

Untuk menampung variasi ini, anda mungkin perlu melaraskan kod di atas untuk mengambil kira arahan khusus yang anda gunakan dan corak pengendalian ralat yang dijangkakan.

Atas ialah kandungan terperinci Mengapa Kod My Go Terus Membuang 'Status Keluar 1'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan