linux 下 java程序执行shell命令 跪求!!!!

问题描述

一个Java程序在Linux下面执行shell命令来创建用户为什么总是执行不成功呢。希望大家帮帮小弟!!!Stringuser="张三";Stringcellphone="5858678";Stringcommandstr="useradd-glingyun"+user+";echo""+cellphone+""|passwd--stdin"+user+"";Processp;System.out.println(commandstr);try{p=Runtime.getRuntime().exec(commandstr);if(p.waitFor()==0){out.print("backupsuccessn");}else{out.print("backupfalsen");}}catch(Exceptione){out.print("backupfailn");out.println(e.toString());}

解决方案

解决方案二:
在ubuntu下面,passwd命令貌似没有--stdin参数阿,所以返回值不为0,LZ是用的什么linux?
解决方案三:
useradd-glingyunzhangsan;echo"1989721"|passwd--stdinzhangsan我纠正一下命令是可以执行成功的关键是p=Runtime.getRuntime().exec(commandstr);if(p.waitFor()==0){out.print("backupsuccessn");}这一步它不执行不成功!!
解决方案四:
引用2楼z80412007的回复:

useradd-glingyunzhangsan;echo"1989721"|passwd--stdinzhangsan我纠正一下命令是可以执行成功的关键是p=Runtime.getRuntime().exec(commandstr);if(p.waitFor()==0){out.print("backupsuccessn……

执行不成功
解决方案五:
String[]cmd={"/bin/sh",commandstr};p=Runtime.getRuntime().exec(cmd);

时间: 2024-10-24 14:05:30

linux 下 java程序执行shell命令 跪求!!!!的相关文章

Linux下使用popen()执行shell命令

  简单说一下popen()函数 函数定义 #include <stdio.h> FILE * popen(const char *command , const char *type ); int pclose(FILE *stream); 函数说明 popen()函数通过创建一个管道,调用fork()产生一个子进程,执行一个shell以运行命令来开启一个进程.这个管道必须由pclose()函数关闭,而不是fclose()函数.pclose()函数关闭标准I/O流,等待命令执行结束,然后返回

Linux下普通用户执行sudo命令不需要密码问题的解决

环境:VirtualBox4.1 + RedHat Linux 6 + Putty0.62 问题:当普通 用户执行sudo命令时,会提示你输入当前用户的密码.使用这个命令目的就是为 了安全.方便,每次输入密码就会显得麻烦.所以提供如下的解决办法.只需要 以前的基础上添加NOPASSWD就行. 解决: 1.添加可以执行root命 令的用户,详情参考XXX is not in the sudoers file解决. 2.在以前的 基础上添加代码 user_name ALL=(ALL) NOPASSW

kafka linux下java客户端的详细编译步骤

问题描述 kafka linux下java客户端的详细编译步骤 求关于kafka在Linux 命令行下的java客户端详细编译步骤,网上直看到些程序代码但是具体编译过程很少

Java程序执行Linux命令

java程序中要执行linux命令主要依赖2个类:Process和Runtime 首先看一下Process类: [plain] view plaincopyprint? ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机进程,并返回 Process 子类的一个实例,   该实例可用来控制进程并获得相关信息.Process 类提供了执行从进程输入.执行输出到进程.等待进程完成.   检查进程的退出状态以及销毁(杀掉)进程的方法.   创建进程的方法可能无法

linux下java调用多行有相互依赖关系的shell命令,如何调用

问题描述 linux下java调用多行有相互依赖关系的shell命令,如何调用 小弟想用java调用用多行有前后依赖关系的shell命令: 例如: 先process=Runtime.getRuntime().exec("mysql");进入mysql命令行 在用java给mysq命令行传mysql脚本,执行脚本命令 麻烦大家回答一下,或者给点建议意见 解决方案 linux下java调用shell和windows下java调用bat 解决方案二: 通过管道重定向来接收和处理命令 解决方案

linux下执行shell命令方法简介_linux shell

linux下执行shell命令有两种方法  在当前shell中执行shell命令 在当前shell中产生一个subshell,在subshell中执行shell命令  1.在当前shell中执行shell命令 主要就是在命令行中通过交互方式方式直接输入shell命令,命令行直接执行给出结果.比如这样: 2.在当前shell中产生一个subshell,在subshell中执行shell命令 比如我们把shell写成shell脚本的方式来运行,这个时候会先启动一个subshell来代替当前的shel

Android Java执行Shell命令

主要介绍Android或Java应用中如何以默认用户或root用户执行Shell命令,ShellUtils的API介绍.使用及使用场景(如静默安装和卸载.修改hosts文件.拷贝文件).使用纯Java实现,所以对Java程序同样适用. 很多朋友在使用TrineaAndroidCommon@Github中的ShellUtils工具类了,那就大致介绍下他的功能吧. 1.API介绍 以下是ShellUtils中最终执行命令的方法execCommand: Java 1 public CommandRes

借助Shell让你在Linux下也能用DOS命令

如果你是习惯于Windows命令提示符的IT人,当你第一次使用Linux命令行时 ,一定会感到无所适从.你所熟悉的DOS命令再Linux中基本不存在.摆在你面前 的是一大堆要记背的命令. 一种替代方案是利用强大的Linux外壳命令编写shell脚本,让你在Linux下也 能用DOS命令.下面告诉你怎么做. shell脚本编写基础 从定时备份到执行简单命令,Linux的shell脚本可以执行各种功能.几乎所 有的程序都可以用shell脚本来运行.在脚本中甚至可以包含一些简单的条件选 择.shell

工具-Linux系统下java程序如何将PDF文件转换成SWF文件

问题描述 Linux系统下java程序如何将PDF文件转换成SWF文件 我需要将PDF文件转换成SWF格式的文件,目前是用windows系统开发java程序,windows系统中这种转型已经搞定,用的是swftools工具.但是开发完成之后,程序要部署到Linux系统中.由于不熟悉Linux系统所以无从下手,希望高手指点,最好也用swftools工具转型,尽量详细一些,跪谢. 解决方案 前不久刚用过,应该注意的是swftools工具在linux的安装,有时需要依赖才能安装下去,这个工具安装好就基