


Wie kann man in Go programmgesteuert mehrere Eingabefelder für einen externen Befehl bereitstellen?
Oct 28, 2024 pm 01:43 PMSchreiben externer Befehle in Go in STDIN
In Go ist es bei der Ausführung externer Befehle häufig erforderlich, Eingaben über STDIN bereitzustellen. In diesem Artikel wird eine Technik zum Schreiben von Eingaben in STDIN untersucht, wenn es um Befehle geht, die mehrere Eingabefelder erfordern.
Betrachten wir einen Befehl, der nacheinander zur Eingabe eines Benutzernamens und eines Passworts auffordert, wie der Befehl „login“. Um diese Eingaben programmgesteuert bereitzustellen, müssen wir in die STDIN des Befehls schreiben.
Der ursprüngliche Ansatz bestand darin, die Eingabefelder manuell zu bearbeiten, wie im folgenden Code dargestellt:
1 2 3 4 5 6 7 8 9 10 |
|
Allerdings , diese Methode erlaubt keine programmgesteuerte Eingabe. Die Lösung besteht darin, einen bytes.Buffer zum Zusammenstellen der Eingabe zu verwenden. Hier ist ein verbesserter Code:
1 2 3 4 5 6 7 8 |
|
Der bytes.Buffer fungiert als Zeichenpuffer. Indem wir den Benutzernamen und das Passwort durch Zeilenumbrüche getrennt schreiben, erstellen wir im Wesentlichen eine Folge von Eingaben, die der externe Befehl der Reihe nach liest. Dem Stdin-Feld des Befehls wird der Puffer zugewiesen, um sicherzustellen, dass die Eingaben in den Prozess des Befehls eingespeist werden.
Dieser Ansatz ermöglicht die automatisierte Eingabe in externe Befehle mit mehreren Eingabefeldern und vereinfacht so die Interaktion zwischen Go und anderen Befehlen. Linienwerkzeuge.
Das obige ist der detaillierte Inhalt vonWie kann man in Go programmgesteuert mehrere Eingabefelder für einen externen Befehl bereitstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

GO Language Pack Import: Was ist der Unterschied zwischen Unterstrich und ohne Unterstrich?

Wie kann ich kurzfristige Informationsübertragung zwischen Seiten im BeEGO-Framework implementieren?

Wie schreibe ich Scheinobjekte und Stubs zum Testen in Go?

Wie konvertieren Sie die Liste der MySQL -Abfrageergebnisse in eine benutzerdefinierte Struktur -Slice in Go -Sprache?

Wie kann ich benutzerdefinierte Typ -Einschränkungen für Generika in Go definieren?

Wie kann ich Tracing -Tools verwenden, um den Ausführungsfluss meiner GO -Anwendungen zu verstehen?

Wie schreibe ich Dateien in Go Language bequem?
