Os Exec Sudo Command in Go
Latar Belakang
Semasa meneroka Go dan goroutine, pengguna mungkin menghadapi kesukaran melaksanakan arahan dengan format:
sudo find /folder -type f | while read i; do sudo -S chmod 644 "$i"; done
Soalan
Jawapan
cmd := exec.Command("/bin/sh", "-c", "sudo find ...")
Pengubahsuaian Kod
Berikut ialah kod yang diubah suai:
package main import ( "fmt" "os/exec" ) func main() { cmd := exec.Command("/bin/sh", "-c", "sudo find /folder -type f | while read i; do sudo -S chmod 644 \"\"; done") out, err := cmd.CombinedOutput() if err != nil { fmt.Printf("Error: %s\nOutput: %s", err, out) } }
Atas ialah kandungan terperinci Mengapakah `exec.Command()` Mengembalikan Status Keluar 1 Apabila Menjalankan Perintah `sudo` dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!