Wie kann man sich mit Java auf Systemebene einklinken?

Siehe auch einbetter question, genauer gesagt, zu diesem Thema.

Ich habe gerade entdeckt expect, eine tcl-basierte Skriptsprache, mit der unter anderem Telnet-Verbindungen automatisiert werden können:

thufir@mordor:~/NetBeansProjects/expect$ 
thufir@mordor:~/NetBeansProjects/expect$ expect example rainmaker.wunderground.com 3000
spawn telnet rainmaker.wunderground.com 3000
Trying 38.102.137.140...
Connected to rainmaker.wunderground.com.
Escape character is '^]'.
------------------------------------------------------------------------------
*               Welcome to THE WEATHER UNDERGROUND telnet service!            *
------------------------------------------------------------------------------
*                                                                            *
*   National Weather Service information provided by Alden Electronics, Inc. *
*    and updated each minute as reports come in over our data feed.          *
*                                                                            *
*   **Note: If you cannot get past this opening screen, you must use a       *
*   different version of the "telnet" program--some of the ones for IBM      *
*   compatible PC's have a bug that prevents proper connection.              *
*                                                                            *
*           comments: [email protected]                              *
------------------------------------------------------------------------------

Press Return to continue:usage: send [args] string
    while executing
"send – – “\r”"
    (file "example" line 9)
thufir@mordor:~/NetBeansProjects/expect$ 

Welche Mechanismen stehen zur Verfügung, um sich entweder in Expect mit Java oder in Java mit Expect einzuklinken? Ja, es gibthttp: //tcljava.sourceforge.net sowie ein paar andere, aber sie scheinen veraltet zu sein.

Wenn es eine tcl-Implementierung in Java gibt und warum nicht, würde das funktionieren, da bin ich mir sicher. Ich schließe jedoch aus dem Mangel an Aktualisierungen für Webseiten, dass nichts jemals vollständig implementiert wurde ...

Wikipedia sagt:

Jav

expect4j — an attempt at a Java clone of the original Expect
ExpectJ — a Java implementation of the Unix expect utility
Expect-for-Java — pure Java implementation of the Expect tool

Allerdings sagt expect4j, dass es sich um einen Versuch handelt, ExpectJ wurde seit 2010 nicht mehr geändert, und Expect-for-Java wurde seit Jahren auch nicht mehr angerührt.

Wenn diese Bibliotheken verwendet werden und funktionieren, entschuldige ich mich, aber die Daten deuten darauf hin, dass sie nicht gepflegt werden.

Ich würde lieber erwarten und Java getrennt verwenden, aber damit sie interagieren. Gibt es einen Haken oder Mechanismus zum Weiterleiten von Nachrichten zwischen den beiden?

------------------------------------------------- ----------AKTUALISIEREN---------

**

Jacl ist ein in Java geschriebener Tcl 8.x-Interpreter. Sie können Ihre Java-Anwendungen in Tcl skripten.

**

http: //wiki.tcl.tk/121

Die Bibliothek wurde jedoch seit einiger Zeit nicht mehr berührt. Ich bin mir nicht ganz sicher, wie gut es funktioniert. Ich weiß nicht, ob es so etwas wie @ unterstütexpect oder nicht, es sieht aus wie die verschiedenenexpect Versuche werden nicht gepflegt.

Höchstwahrscheinlich ist die Antwort von Donal Fellows, dass es keine wirkliche Lösung gibt, richtig. Wie auch immer, eskönnt Es ist nur möglich, diese tcl-Bibliothek zu verwenden, um eine Telnet-Sitzung zu initiieren, echtes Telnet aufzurufen und nicht mit Process Builder, aber das ist sehr vorläufig.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage