vendredi 22 mai 2015
SSH sessions
Posted on 15:58 by verona
Hallo zusammen,
ich hoffe ihr könnt mir weiterhelfen.
ich habe nur wenig Erfahrung mit Java.
ich will per Java über SSH aufs Raspberry zugreifen. (Commands schicken)
Das funktioniert auch soweit. Verbindung kann ich aufbauen und einzelne Befehle schicken.
Mein Ziel: Swingoberfläche bauen (kein Problem, hab ich schon oft gemacht)
Auf dieser GUI befinden sich Keylistener, die bei Tastenschlag bestimmte Methoden aufrufen sollen (hab ich auch schon)
Nur hab ich keine Ahnung, wie ich per diesen aufgerufenen Methoden einen Befehl per SSH schicken soll.
Mein SSH Zugriff funktioniert folgendermaßen:
Natürlich könnte ich einfach die gesammte Prozedur in die Methoden schreiben, aber ich will nicht bei jeden tastenschlag einen neue connection aufbauen usw...
code von Ganymed SSH-2
Ich hoffe ihr könnt mir helfen!
Vielen Dank! :)
ich hoffe ihr könnt mir weiterhelfen.
ich habe nur wenig Erfahrung mit Java.
ich will per Java über SSH aufs Raspberry zugreifen. (Commands schicken)
Das funktioniert auch soweit. Verbindung kann ich aufbauen und einzelne Befehle schicken.
Mein Ziel: Swingoberfläche bauen (kein Problem, hab ich schon oft gemacht)
Auf dieser GUI befinden sich Keylistener, die bei Tastenschlag bestimmte Methoden aufrufen sollen (hab ich auch schon)
Nur hab ich keine Ahnung, wie ich per diesen aufgerufenen Methoden einen Befehl per SSH schicken soll.
Mein SSH Zugriff funktioniert folgendermaßen:
- connection aufbauen. (mit zugangsdaten)
- Session starten.
- Befehl schicken.
- session beenden.
- connection schließen.
Natürlich könnte ich einfach die gesammte Prozedur in die Methoden schreiben, aber ich will nicht bei jeden tastenschlag einen neue connection aufbauen usw...
code von Ganymed SSH-2
Java Code:
-
-
package control;
-
-
import java.io.BufferedReader;
-
import java.io.IOException;
-
import java.io.InputStream;
-
import java.io.InputStreamReader;
-
-
import ch.ethz.ssh2.Connection;
-
import ch.ethz.ssh2.Session;
-
import ch.ethz.ssh2.StreamGobbler;
-
-
public class Basic
-
{
-
{
-
-
try
-
{
-
/* Create a connection instance */
-
-
-
/* Now connect */
-
-
conn.connect();
-
-
/* Authenticate.
-
* If you get an IOException saying something like
-
* "Authentication method password not supported by the server at this stage."
-
* then please check the FAQ.
-
*/
-
-
boolean isAuthenticated = conn.authenticateWithPassword(username, password);
-
-
if (isAuthenticated == false)
-
-
/* Create a session */
-
-
Session sess = conn.openSession();
-
-
sess.execCommand("uname -a && date && uptime && who");
-
-
-
/*
-
* This basic example does not handle stderr, which is sometimes dangerous
-
* (please read the FAQ).
-
*/
-
-
-
-
while (true)
-
{
-
if (line == null)
-
break;
-
}
-
-
/* Show exit status, if available (otherwise "null") */
-
-
-
/* Close this session */
-
-
sess.close();
-
-
/* Close the connection */
-
-
conn.close();
-
-
}
-
{
-
}
-
}
-
-
-
public void tastendruck(){ // wird bei tasten druck aufgerufen
-
-
sess.execCommand("sudo etwas... ");
-
-
}
-
-
-
public void tastendruck_2(){ // wird bei tasten2 druck aufgerufen
-
-
sess.execCommand("sudo etwas anderes.. ");
-
-
}
-
-
-
}
Ich hoffe ihr könnt mir helfen!
Vielen Dank! :)
SSH sessions
Categories: SSH sessions
Inscription à :
Publier les commentaires (Atom)
0 commentaires:
Enregistrer un commentaire