Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

how to execute commands from java

 
suigeneris pegasus
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
hi,
i m trying to execute a CVS command from a java environment. i m writing this code to create a user. for this i m executing this cvs command "cmd /c cvs passwd -r <username> -a <new-username>"
after executing this cmd the command prompt will prompt for a pasword and then after entring the password i have to retype the password for confirmation. the existing code execcutes the command but i don t know how to read the prompt for password.
<code>
import java.io.*;
import java.lang.*;

public class first {
public static void main(String[] args) {
try {
Process p = Runtime.getRuntime().exec("cmd /c cvs passwd -r gopalakrishnan_k -a ram");
InputStreamReader reader=new InputStreamReader(System.in);
BufferedReader OptFromCmd = new BufferedReader(new InputStreamReader(
p.getInputStream()));

BufferedReader fromKeyboard = new BufferedReader(reader);
BufferedReader stdError = new BufferedReader(new InputStreamReader(
p.getErrorStream()));
OutputStream stdOut = p.getOutputStream();
String s;
String pswd = "mahesh";
System.out.println("Success");

int i = 0;

while ((s = OptFromCmd.readLine()) != null) {
//s = OptFromCmd.readLine();
i++;
System.out.println(s);

System.out.println(i);

if (i > 1) {
stdOut.write(pswd.getBytes());
stdOut.flush();
}

}

System.out.println(
"Here is the standard error of the command (if any):\n");

while ((s = stdError.readLine()) != null) {
System.out.println(s);
}

/* Your Password Here */
String password="Password Please";
stdOut.write(password.getBytes());
stdOut.flush();
stdOut.write(password.getBytes());
stdOut.flush();
/* Your Password here */

OptFromCmd.close();
stdError.close();
stdOut.close();
} catch (Exception e) {

e.printStackTrace();
}
}
}

</code>

[o/p]

this program gives the output as
adding the user <username>
password:

now i need to enter the password from java envronment and provide it in the command prompt .
then it prompts for the password again for confirmation so i have to retype the password again
how to acheive this.
[ May 29, 2007: Message edited by: suigeneris pegasus ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic