用java执行linux命令可行吗? 我正在尝试创build一个web servlet,以允许ftp用户在不使用sshlogin访问的情况下更改密码。 我想执行下一个命令:
# adduser -s /sbin/nologin clientA -d /home/mainclient/clientA # passwd clientA # cd /home/mainclient; chgrp -R mainclient clientA # cd /home/mainclient/clientA; chmod 770 .
在启动时启动Java应用程序
从Java运行Echo
如何强制在Java 1.5.0_14 JRE而不是JRE 1.7中打开JNLP文件
不能在Windows上使用jar命令
风暴工作者连接
看看这个 。
然而,你所说的是超出规范的范围,我不会推荐它。 要使其运行,您要么以root身份运行您的应用程序服务器,要么使用其他一些机制为用户提供应用程序服务器作为执行这些特权命令的权限。 一个小的搞砸了,你是“拥有”。
使用:
Runtime.getRuntim().exec("Command");
其中Command是要执行的命令字符串。
如果您从Java调用这些命令,请确保将多个命令打包到一个shell脚本中。 这将使调用更容易。
看看java.lang.Runtime
java RunTime对象具有用于在单独的进程中运行命令的exec方法