Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1805 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Procédure Exec de Runtime

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Procédure Exec de Runtime

n°674276
Smoltok
Posté le 15-03-2004 à 17:00:39  profilanswer
 

Bonjour les zamis !
 
J'utilise le code suivant :
 
String ls_str;
 
Process ls_proc = Runtime.getRuntime().exec("/bin/ls -aFl" );
DataInputStream ls_in = new DataInputStream(            ls_proc.getInputStream());
try {
 while ((ls_str = ls_in.readLine()) != null)  
{        System.out.println(ls_str);
}
 
   } catch (IOException e)  
{
 System.exit(0);
}
 
Ce code est censé me permettre d 'éxecuter certaines requestes system.
 
Celà fonctionne avec la commande /bin/ls ( sous unix hein :) )
mais une commande du stype ldapmodify nada....
 
 
une idée ?  :jap:  
 
Smoltok
 


Message édité par Smoltok le 15-03-2004 à 17:02:01
mood
Publicité
Posté le 15-03-2004 à 17:00:39  profilanswer
 

n°674278
machinbidu​le1974
Do you feel lucky, punk ?
Posté le 15-03-2004 à 17:01:02  profilanswer
 

Et ?

n°674281
the real m​oins moins
Posté le 15-03-2004 à 17:01:40  profilanswer
 

Smoltok a écrit :

Bonjour les zamis !
 
J'utilise le code suivant :

cool [:youpi] [:zaib3k]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674284
Smoltok
Posté le 15-03-2004 à 17:02:46  profilanswer
 


 
Vous etes trop rapide lesgars ...
la souris a cliqué toute seule sur le bouton entrée  :lol:  
 
jai du édité rapidement !!

n°674286
machinbidu​le1974
Do you feel lucky, punk ?
Posté le 15-03-2004 à 17:03:04  profilanswer
 

nada ? Qu'est-ce-que tu as comme retour quand tu lances ta commande ldapmodify ?

n°674287
Smoltok
Posté le 15-03-2004 à 17:03:13  profilanswer
 


 
vi vi je sais  :heink:

n°674288
the real m​oins moins
Posté le 15-03-2004 à 17:03:49  profilanswer
 

ben commence déjà par mater ce que ton exception dit au lieu de sortir de ton prog comme un bourin [:kiki]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674291
Smoltok
Posté le 15-03-2004 à 17:05:18  profilanswer
 

machinbidule1974 a écrit :

nada ? Qu'est-ce-que tu as comme retour quand tu lances ta commande ldapmodify ?


 
retour du type  
entry cn=.... modified.
 
j'aimerais aussi utiliser cette fonction ( exec ) pour me générer un mot de passe crypté par la commance /usr/sbin/slappasswd genre slappasswd -h {'MD5'} -s toto
mais là je sèche  :sweat:

n°674294
uriel
blood pt.2
Posté le 15-03-2004 à 17:06:06  profilanswer
 

[:marc] et pourquoi pas le faire par java security ?


---------------
IVG en france
n°674295
Smoltok
Posté le 15-03-2004 à 17:06:46  profilanswer
 

the real moins moins a écrit :

ben commence déjà par mater ce que ton exception dit au lieu de sortir de ton prog comme un bourin [:kiki]


 
le bourrin bosse dessus depuis toute une journée et en a marre
et l'erreur est du style : ah bah ya pas d'erreur...
d'ou mon incapacité à la nommer...  :cry:


Message édité par Smoltok le 15-03-2004 à 17:08:47
mood
Publicité
Posté le 15-03-2004 à 17:06:46  profilanswer
 

n°674299
Smoltok
Posté le 15-03-2004 à 17:07:51  profilanswer
 

uriel a écrit :

[:marc] et pourquoi pas le faire par java security ?


 
j'y ai pensé mais  :heink:  
 
mon mot de passe MD5 générér par java.security est incimpatible avec mon attribut userPassword dans mon LDAP ( openLDAP V3 ).

n°674302
the real m​oins moins
Posté le 15-03-2004 à 17:08:42  profilanswer
 

Smoltok a écrit :


 
le bouyrrin bosse dessus depuis toute une journée et en a marre
et l'erreur est du style : ah bah ya pas d'erreur...
d'ou mon incapacité à la nommer...  :cry:  

catch (IOException ex) { System.exit(0); }
 
tu m'etonnes qu'y'a pas d'erreur  [:zaib3k]  
 
ex.printStackTrace();


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674303
Smoltok
Posté le 15-03-2004 à 17:10:06  profilanswer
 

the real moins moins a écrit :

catch (IOException ex) { System.exit(0); }
 
tu m'etonnes qu'y'a pas d'erreur  [:zaib3k]  
 
ex.printStackTrace();


 
oui oui ok ok j'ai tappé rapidement un morceau de code pour le forum MEA CULPA  :jap:  
 
mais rien ne passe a travers mon try catch pour information

n°674306
uriel
blood pt.2
Posté le 15-03-2004 à 17:11:21  profilanswer
 

Smoltok a écrit :


j'y ai pensé mais  :heink:  
mon mot de passe MD5 générér par java.security est incimpatible avec mon attribut userPassword dans mon LDAP ( openLDAP V3 ).


 
j'ai eu un probleme semblable, mais tu peux adapter pour obtenir la même chose, sans doute un probleme de nombres de caracteres


---------------
IVG en france
n°674309
machinbidu​le1974
Do you feel lucky, punk ?
Posté le 15-03-2004 à 17:12:16  profilanswer
 

Est-ce-que ton erreur ne vient pas du fait que la commande ldapmodify n'est pas trouvée ? Si tu essaies de donner le chemin absolu de ta commande ldapmodify, ça donne quoi ?

n°674310
Smoltok
Posté le 15-03-2004 à 17:12:43  profilanswer
 

uriel a écrit :


 
j'ai eu un probleme semblable, mais tu peux adapter pour obtenir la même chose, sans doute un probleme de nombres de caracteres  


 
pourrais tu expliciter stp ?

n°674312
Smoltok
Posté le 15-03-2004 à 17:14:18  profilanswer
 

machinbidule1974 a écrit :

Est-ce-que ton erreur ne vient pas du fait que la commande ldapmodify n'est pas trouvée ? Si tu essaies de donner le chemin absolu de ta commande ldapmodify, ça donne quoi ?


 
au début je l'utilisais en relatif mais je me suis posés la question et jai tout mi en absolu apres avoir vu quelques exemples sur le net mais aucun changement :/

n°674318
machinbidu​le1974
Do you feel lucky, punk ?
Posté le 15-03-2004 à 17:16:46  profilanswer
 

Mais tu n'as vraiment aucune erreur ? C'est dingue ça ! Aucun symptôme qui pourrait nous aiguiller ???

n°674319
Smoltok
Posté le 15-03-2004 à 17:16:56  profilanswer
 

Voilà un exemple plus concret de mon code  
 
String[] params = {"/usr/sbin/slappasswd" , "-h",  "'{MD5}'",  "-s", "koukou"};
 
String ls_str;
     
    Process ls_proc = Runtime.getRuntime().exec(params);
     
DataInputStream ls_in = new DataInputStream(ls_proc.getInputStream());
     
try
{
while ((ls_str = ls_in.readLine()) != null )
{
NSLog.out.appendln(ls_str);
}
}
catch (Exception e)
{
NSLog.out.appendln(e.toString());
}

n°674323
Smoltok
Posté le 15-03-2004 à 17:18:01  profilanswer
 

machinbidule1974 a écrit :

Mais tu n'as vraiment aucune erreur ? C'est dingue ça ! Aucun symptôme qui pourrait nous aiguiller ???


 
oui c dingue ca...il ne me dit rien du tout ..si au moins y avait une erreur de type IO ce serait déjà moins affreux...
ignorance..ignorance...
 
je dois mal my prendre alors...autre suggestion peut etre ?


Message édité par Smoltok le 15-03-2004 à 17:19:04
n°674324
the real m​oins moins
Posté le 15-03-2004 à 17:18:47  profilanswer
 

et le return code?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674325
the real m​oins moins
Posté le 15-03-2004 à 17:19:14  profilanswer
 

et pour l'InputStream, pq tu passes par un DATAinputStream ? :heink:


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674326
machinbidu​le1974
Do you feel lucky, punk ?
Posté le 15-03-2004 à 17:19:44  profilanswer
 

Mais c'est pas l'OutputStream que tu devrais récupérer plutôt ? C'est bien la sortie de ta commande que tu veux afficher ?

n°674327
the real m​oins moins
Posté le 15-03-2004 à 17:20:30  profilanswer
 

oui en plus, bien vu :D
 
pour le return code: http://java.sun.com/j2se/1.4.2/doc [...] xitValue()


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674331
Smoltok
Posté le 15-03-2004 à 17:21:38  profilanswer
 


au risque de me faire lapider...rien...
donc à mon avis il n'execute pas la commande..pourtant elle est là,
dans le bon chemin absolu...pas d'histoire de droit spécifique...

n°674332
machinbidu​le1974
Do you feel lucky, punk ?
Posté le 15-03-2004 à 17:23:09  profilanswer
 

Il y a qqchose qui m'échappe... Je dois me tromper mais la sortie devrait logiquement être récupérée dans l'OutputStream de ton process (logique au niveau sémantique). Or un OutputStream ne permet de faire que des opérations de type write()...  :heink:


Message édité par machinbidule1974 le 15-03-2004 à 17:23:29
n°674333
uriel
blood pt.2
Posté le 15-03-2004 à 17:23:26  profilanswer
 

Smoltok a écrit :


pourrais tu expliciter stp ?  


 
oula, ca date un peu, mais je crois que j'etais passé par un tableau de bytes :/
parce que je devais faire une comparaison avec une base de données qui avait été peuplé par un script Perl et le md5 obtenu etait different [:marc]


---------------
IVG en france
n°674334
the real m​oins moins
Posté le 15-03-2004 à 17:25:17  profilanswer
 

machinbidule1974 a écrit :

Il y a qqchose qui m'échappe... Je dois me tromper mais la sortie devrait logiquement être récupérée dans l'OutputStream de ton process (logique au niveau sémantique). Or un OutputStream ne permet de faire que des opérations de type write()...  :heink:  

ha oui, en effet:
http://java.sun.com/j2se/1.4.2/doc [...] utStream()
il a donc raison sur ce coup là ;)
 
par contre je vois tjs pas pourquoi un DataInputStream


Message édité par the real moins moins le 15-03-2004 à 17:26:30

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674336
machinbidu​le1974
Do you feel lucky, punk ?
Posté le 15-03-2004 à 17:29:14  profilanswer
 

Smoltok a écrit :


au risque de me faire lapider...rien...
donc à mon avis il n'execute pas la commande..pourtant elle est là,
dans le bon chemin absolu...pas d'histoire de droit spécifique...


 
[:antp]
 
Désolé mais il me fait marrer ce smiley :D

n°674346
Smoltok
Posté le 15-03-2004 à 17:34:13  profilanswer
 

machinbidule1974 a écrit :


 
[:antp]
 
Désolé mais il me fait marrer ce smiley :D


 
ca a au moins le mérite de me faire rire  :hello:

n°674355
Smoltok
Posté le 15-03-2004 à 17:41:19  profilanswer
 

bon voivci un meilleur bout de code dans ce là ( cf post DataInput ) il est vrai que j'utilisais une methode deprecated...
 
Process ls_proc2 = Runtime.getRuntime().exec(params2);
BufferedReader d = new BufferedReader(new InputStreamReader(ls_proc2.getInputStream()));
   
try
{
while ((ls_str2 = d.readLine()) != null )
  {
  NSLog.out.appendln(ls_str2);
  }
}

n°674368
Smoltok
Posté le 15-03-2004 à 17:56:25  profilanswer
 

:bounce:  
 
UN petit up pour dire que si je ne met qu 'un argument dans ma fonction celà marche...
genre slappasswd -s koukou
mais jai besoin de pouvoir mettre au moins mon autre argument...
 
bon affaire a suivre là je rentre chez moi
 
++

n°674374
the real m​oins moins
Posté le 15-03-2004 à 18:08:28  profilanswer
 

essaie String[] params = {"/usr/sbin/slappasswd" , "-h '{MD5}' -s koukou"}; [:spamafote]


Message édité par the real moins moins le 15-03-2004 à 18:09:39

---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°674764
Smoltok
Posté le 16-03-2004 à 08:20:44  profilanswer
 

snif...déjà essayer....
bon je continue mon investigation ! merci à ceux qui ont bien voulu m'aider
et je up le post en même temps !

n°674784
Smoltok
Posté le 16-03-2004 à 09:28:13  profilanswer
 

Je crois avoir trouvé un indice ....
il n'aime pas les ' dans les arguments....
 
comment faire autrement ?

n°674798
Smoltok
Posté le 16-03-2004 à 09:55:07  profilanswer
 

donc pour résumer enfin si quelqu'un m'écoute encore :
en ligne de commande celà fonctionne :
/bin/ls -a "-F" -s
mais exécuter par la commande exec de runtime celà bug :/
or j'ai besoin de ces guillemets dans ma commande slappasswd ....:/

n°674832
Smoltok
Posté le 16-03-2004 à 10:38:04  profilanswer
 

Dicton : "Quand la montagne est trop grande, contourne là !"
 
En bref, j'ai fait un script qui prend un seul paramètre et plus besoin de spécifier l'argument nécessaire puisqu'inclus dans le script.
 
Merci à mon administratice système préférée :)

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Procédure Exec de Runtime

 

Sujets relatifs
[oracle] désactiver un trigger dans une procédure[PHP] commande exec() et passage d'arguments
test sur un procédureAccess Runtime et tableau croisé dynamique??
[K.D.KOL] runtime class d'un Object et polymorphismeAppel d'une procédure située dans un autre frm
Pb appel procédure stockée oracleJe cherche un source ou une procédure pour faire du code barre EAN 128
[PHP] PB avec safe_mode et shell_exectrigger & procedure stockee
Plus de sujets relatifs à : Procédure Exec de Runtime


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR