写一个linux sh脚本关闭正在运行的java程序 启动新Java程序
时间: 2023-03-05 11:23:18 浏览: 90
以下是一个简单的 Linux Shell 脚本,它可以关闭当前正在运行的 Java 程序,并启动一个新的 Java 程序:
```bash
#!/bin/bash
# 关闭正在运行的 Java 程序
echo "正在关闭 Java 程序..."
pkill -f java
# 启动新的 Java 程序
echo "正在启动新的 Java 程序..."
java -jar /path/to/your/java/program.jar &
```
上面的脚本中,`pkill -f java` 命令将关闭当前正在运行的所有 Java 程序。如果你只想关闭某个特定的 Java 程序,可以将 `pkill -f java` 改为 `pkill -f your_java_program_name`,其中 `your_java_program_name` 是你要关闭的 Java 程序的名称。
`java -jar /path/to/your/java/program.jar &` 命令将启动一个新的 Java 程序,`/path/to/your/java/program.jar` 是你要启动的 Java 程序的路径和文件名。在命令的末尾加上 `&`,可以将该命令放入后台运行,这样你就可以继续使用终端了。
相关问题
linux 启动java程序脚本
要在Linux上启动Java程序脚本,您需要按照以下步骤操作:
1. 安装Java运行时环境(JRE)或Java开发工具包(JDK)。
2. 编写Java程序,并将其保存为一个可执行的JAR文件。
3. 创建一个启动脚本,其中包含以下内容:
#!/bin/sh
java -jar /path/to/your/jar/file.jar
4. 将脚本保存为一个可执行文件,例如“start.sh”。
5. 在终端中导航到脚本所在的目录,并运行以下命令:
chmod +x start.sh
6. 现在,您可以通过运行以下命令来启动Java程序:
./start.sh
这将启动您的Java程序,并在终端中显示输出。
通过JAVA程序在windows启动虚拟机中的Linux脚本
可以使用Java中的ProcessBuilder类来启动一个新的进程并执行Linux脚本。以下是一个示例代码:
```
ProcessBuilder pb = new ProcessBuilder("/bin/bash", "/path/to/your/script.sh");
pb.redirectErrorStream(true);
Process process = pb.start();
```
其中,第一个参数是要执行的Shell命令,第二个参数是Linux脚本的路径。`redirectErrorStream(true)`表示将标准输出和标准错误输出合并到一起。
需要注意的是,如果你希望和Linux交互,可以在Shell命令中添加`-i`参数。
另外,如果你需要向Linux脚本传递参数,可以在Shell命令中使用`$1`、`$2`等来引用这些参数。在ProcessBuilder中,可以使用`command(String...)`方法来传递参数,例如:
```
ProcessBuilder pb = new ProcessBuilder("/bin/bash", "/path/to/your/script.sh", "arg1", "arg2");
```
这样,在Linux脚本中就可以使用`$1`和`$2`来获取这些参数了。