IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Développer une application telnet


Sujet :

avec Java

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Janvier 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Développer une application telnet
    Bonjour,

    J'aimerais faire une application telnet en Java (ouvrir une session telnet, lancer les commandes et recevoir les résultats dans un fichier texte).

    Quelqu'un saurait-il me guider un peu ?

    Merci d'avance pour votre aide.

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 710
    Points : 4 794
    Points
    4 794
    Par défaut
    C'est bien !
    et maintenant tu nous montres le code que tu as fais et là où tu coinces ?
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Janvier 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Janvier 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    voila le code : (mais ça marche pas)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    package TelnetSample; 
     
    import org.apache.commons.net.telnet.TelnetClient;
    import java.io.*;
     
    public final class TelnetSample
    {
      private TelnetClient telnet = new TelnetClient();
      private InputStream in;
      private PrintStream out;
      private char prompt = '$';
     
      public TelnetSample( String server, String user, String password ) {
       try {
    	 // Connect to the specified server
    	 telnet.connect( server, 23 );
     
    	 // Get input and output stream references
    	 in = telnet.getInputStream();
    	 out = new PrintStream( telnet.getOutputStream() );
           // Log the user on
             readUntil( "login: ");
    	 write( user );
    	 readUntil( "Password: " );
    	 write( password );
     
    	 // Advance to a prompt
    	 readUntil( prompt + " " );
       }
       catch( Exception e ) {
       }
      }
     
      public void su( String password ) {
        try {
          write( "su" );
          readUntil( "Password: " );
          write( password );
          prompt = '#';
          readUntil( prompt + " " );
        }
        catch( Exception e ) {
        }
      }
     
      public String readUntil( String pattern ) {
       try {
    	 char lastChar = pattern.charAt( pattern.length() - 1 );
    	 StringBuilder sb = new StringBuilder();
    	 boolean found = false;
    	 char ch = ( char )in.read();
    	 while( true ) {
    	  System.out.print( ch );
    	  sb.append( ch );
    	  if( ch == lastChar ) {
    	    if( sb.toString().endsWith( pattern ) ) {
    		 return sb.toString();
    	    }
    	  }
    	  ch = ( char )in.read();
    	 }
       }
       catch( Exception e ) {
       }
       return null;
      }
     
      public void write( String value ) {
       try {
    	 out.println( value );
    	 out.flush();
    	 System.out.println( value );
       }
       catch( Exception e ) {
       }
      }
     
      public String sendCommand( String command ) {
       try {
    	 write( command );
    	 return readUntil( prompt + " " );
       }
       catch( Exception e ) {
       }
       return null;
      }
     
      public void disconnect() {
       try {
    	 telnet.disconnect();
       }
       catch( Exception e ) {
       }
      }
     
      public static void main( String[] args ) {
       try {
    	 TelnetSample telnet = new TelnetSample( "192.168.1.99", 
                             "username", 
                             "password" );
    	 telnet.sendCommand( "cd /mydir/mysubdir" );
         telnet.su( "root-password" );
    	 telnet.sendCommand( "./restart.sh" );
    	 telnet.disconnect();
       }
       catch( Exception e ) {
       }
      }
    }

  4. #4
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Si tu traçais les exceptions dans les blocs catch, au lieu de les laisser vides, tu aurais plus d'informations sur ce qui ne va pas.

    On ne fait jamais de catchs vides. Et n'oublie pas de fermer tes flux, lorsque tu t'en sers plus.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

Discussions similaires

  1. Réponses: 3
    Dernier message: 25/04/2006, 11h32
  2. Quel composant pour développer une application de planning ?
    Par Wilco dans le forum Composants VCL
    Réponses: 7
    Dernier message: 19/02/2006, 13h12
  3. [Info] Eclipse est-il gratuit pour développer une application ?
    Par kaishef dans le forum Eclipse Platform
    Réponses: 2
    Dernier message: 12/04/2005, 11h04
  4. Réponses: 16
    Dernier message: 12/11/2004, 00h05
  5. [RCP] Devrais-je développer une application RCP ou un plugin ?
    Par arN34 dans le forum Eclipse Platform
    Réponses: 2
    Dernier message: 23/09/2004, 17h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo