Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara Mengautomasikan Input Perintah Luaran dalam Go: Panduan untuk Melangkau Interaksi Pengguna untuk Perintah Seperti \"log masuk\"

Cara Mengautomasikan Input Perintah Luaran dalam Go: Panduan untuk Melangkau Interaksi Pengguna untuk Perintah Seperti \"log masuk\"

Linda Hamilton
Linda Hamiltonasal
2024-10-31 22:11:29427semak imbas

How to Automate External Command Input in Go:  A Guide to Bypassing User Interaction for Commands Like

Mengautomasikan Input Perintah Luaran untuk Go

Dalam Go, melaksanakan perintah luaran dan mengurus input dan outputnya ialah tugas biasa. Walau bagaimanapun, apabila berurusan dengan arahan yang menggesa input pengguna, seperti "log masuk", ia boleh mencabar untuk mengautomasikan input ini secara pengaturcaraan.

Satu pendekatan untuk masalah ini ialah menulis terus ke input standard arahan (stdin ) menggunakan penimbal bait. Mari kita selami penyelesaian yang disediakan:

<code class="go">login := exec.Command(cmd, "login")

var b bytes.Buffer
b.Write([]byte(username + "\n" + pwd + "\n"))

login.Stdout = os.Stdout
login.Stdin = &b
login.Stderr = os.Stderr</code>

Dalam kod ini, kami mencipta bait. Penampan bernama b dan menggabungkan nama pengguna dan kata laluan dengan baris baharu. Kami kemudiannya menetapkan b kepada medan Stdin arahan log masuk, dengan berkesan menyambungkan penimbal kepada aliran input arahan.

Apabila perintah itu dilaksanakan, ia akan membaca aksara daripada b sehingga ia menemui baris baharu, mentafsir ini sebagai nama pengguna. Ia kemudian akan dibaca sehingga baris baharu seterusnya, menganggap ini sebagai kata laluan. Dengan menulis secara manual kepada penimbal dengan cara ini, kami memintas keperluan untuk interaksi pengguna dan menyediakan input yang diperlukan secara pengaturcaraan.

Ingat, stdin ialah penimbal aksara dan perintah biasanya membaca input sehingga mereka menemui baris baharu. Teknik ini membolehkan anda menimbal dan menyusun input sebelum menyalurkannya kepada arahan luaran, mengautomasikan proses input tanpa memerlukan campur tangan pengguna manual.

Atas ialah kandungan terperinci Cara Mengautomasikan Input Perintah Luaran dalam Go: Panduan untuk Melangkau Interaksi Pengguna untuk Perintah Seperti \"log masuk\". Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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