要根据你的系统写一个同的脚.因为不同的系统在创建用户时交互命令不同,比如\r
<代表输入\r
>代表终端输出:
#useradd username<
LINUX下就行了.只要从web得到username,
然后调用runtime.getruntime().exec("useradd "+username);
就可以.
#passwd username<
#>palese input new passwd://不一定象我这样的提示.
#1234567<
#>确认提示
#<1234567
有的系统这时就ok了,有的还要什么fullname什么的.你要知道你的系统的过程.
然后我们来编程:
process p1 = runtime.getruntime().exec("useradd "+username);
//不要交互
process p2 = runtime.getruntime().exec("passwod "+username);
//这个过程要交互
bufferedreader in = new buffered(new inputstreamreader(p2.getinputstream()));
outputstreamwriter out = new outputstreamwriter (p2.getoutputstream());
string line="";
while((line = in.readline()) != null)
{
if(-1 !=line.indexof("等待输入密码的提示"))
out.print(passwd+"\r\n");
if(-1 !=line.indexof("等待再次输入密码的提示"))
out.print(passwd+"\r\n");
if(-1 !=line.indexof("成功提示"))
break;
}
in.close();
out.close();
这样就用Java程序执行了一个系统命令
posted on 2008-10-03 14:35
Blog of JoJo 阅读(226)
评论(0) 编辑 收藏 所属分类:
Linux 技术相关