Mendapatkan Keluaran Perintah sebagai Rentetan dalam Go
Dalam Go, mengakses output arahan sistem boleh dicapai menggunakan pelbagai kaedah. Pada mulanya, nampaknya perlu untuk memanipulasi fail tertentu yang dikaitkan dengan arahan, seperti output standard dan aliran ralatnya. Walau bagaimanapun, terdapat pendekatan yang lebih mudah untuk menangkap output arahan sebagai rentetan.
Untuk memudahkan proses, mari kita pertimbangkan contoh: mendapatkan output arahan 'ls' dalam program Go dan menyimpannya dalam pembolehubah rentetan. Coretan kod berikut menunjukkan cara untuk mencapai ini:
package main import ( "fmt" "log" "os/exec" ) func main() { out, err := exec.Command("date").Output() if err != nil { log.Fatal(err) } fmt.Printf("The date is %s\n", out) }
Dalam contoh di atas, exec.Command("date").Output() digunakan untuk melaksanakan perintah 'date' dan mendapatkan semula outputnya. Hasilnya disimpan dalam pembolehubah keluar sebagai kepingan bait. Untuk menukarnya menjadi rentetan, hanya gunakan fungsi string():
string(out)
Selain itu, exec.Command menyediakan kaedah CombinedOutput(), yang boleh digunakan bukannya Output(). CombinedOutput() mengembalikan kedua-dua output standard dan ralat standard, membolehkan anda mengumpul lebih banyak maklumat tentang pelaksanaan arahan.
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan dan Menyimpan Output Perintah Sistem sebagai Rentetan dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!