我必须为可执行 jar(例如,executable.jar)编写启动和停止脚本。
如何使用 shell 脚本来做到这一点?
我在 Windows 环境中成功完成了此操作。蝙蝠文件。但无法为其编写 shell 脚本。
答案1
这是简单的版本:您可以编写一个小脚本,如下所示(将其保存为 MyStart.sh)
#!/bin/bash
java -jar executable.jar & # You send it in background
MyPID=$! # You sign it's PID
echo $MyPID # You print to terminal
echo "kill $MyPID" > MyStop.sh # Write the the command kill pid in MyStop.sh
当您使用 执行此脚本时/bin/bash MyStart.sh
,它将在屏幕上打印该进程的 PID。
否则,您可以将属性更改为 MyStart.sh ( chmod u+x MyStart.sh
) 并使用 简单运行它./MyStart.sh
。
要停止该进程,您可以通过命令行写入kill 1234
1234 是脚本应答的 PID,或者/bin/bash MyStop.sh
使用完后请记得删除脚本MyStop.sh。
答案2
您不需要运行单独的脚本来停止任务。
借用哈斯塔的剧本:
#!/bin/bash
java -jar executable.jar & # Send it to the background
MyPID=$! # Record PID
echo $MyPID # Print to terminal
# Do stuff
kill $MyPID # kill PID (can happen later in script as well)