我想用 java ee/servlets 运行 bash 脚本。 我希望它嵌入到一个 web 应用程序中,在 linux 操作系统中使用 tomcat 7。
最佳答案
- 将脚本嵌入到 Web 应用程序中,例如 war 文件的根目录。
应用程序部署后获取文件路径:
String scriptPath = getServletContext().getRealPath("/script.sh");
使用 ProcessBuilder 类运行脚本:
new ProcessBuilder("/bin/sh", scriptPath).start();
请注意,如果您的 servlet 容器不提取 war 文件的内容,则第 2 步可能会失败。在这种情况下,您必须将脚本作为类路径上可用的资源,将其内容复制到一个临时文件中,然后在其中运行脚本。
关于bash - 如何使用 tomcat 7 在嵌入式 Web 应用程序中运行 bash 脚本(linux)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10789930/