Java的Linux命令

时间:2020-03-06 14:39:00  来源:igfitidea点击:

是否可以使用Java执行linux命令?我正在尝试创建一个Web Servlet,以允许ftp用户更改其密码而无需ssh登录访问权限。我想执行以下命令:

# adduser -s /sbin/nologin clientA -d /home/mainclient/clientA
# passwd clientA
# cd /home/mainclient; chgrp -R mainclient clientA
# cd /home/mainclient/clientA; chmod 770 .

解决方案

看看这个。

但是,我们正在谈论的事情超出规范,我不建议我们这样做。要使其正常工作,我们将以root用户身份运行应用程序服务器,或者使用其他某种机制来授予用户应用程序服务器正在运行的权限,以执行这些特权命令。某个地方的一个小问题,我们就"拥有"了。

使用:

Runtime.getRuntim().exec("Command");

其中Command是要执行的命令字符串。

Java RunTime对象具有exec方法,可在单独的进程中运行命令

看看java.lang.Runtime

如果从Java调用这些命令,请确保将多个命令打包到一个shell脚本中。这将使调用更加容易。