我制作了 2 个 .sh 脚本来启动和停止 Xampp 服务器。我想将它们合并到一个启动器中以获得类似开/关按钮的功能,这样如果 Xampp 已经启动,它就会停止,但我不知道该怎么做。
我的脚本中的代码如下:
#!/bin/bash
sudo /opt/lampp/lampp start;
echo "Starts Xampp server";
有人能帮我吗?
PS我读过这个答案但这没有帮助...为什么奥利说“但我会把这留给你”?:P
答案1
我目前没有 xampp 服务器设置,但是,它应该是这样的:
if [ $(ps aux | grep ###XAMPP PROCESS NAME### | wc -l) -gt 0;then
echo "Process is running, stopping"
###COMMAND TO STOP XAMPP###
else
echo "Process is not running, starting"
###COMMAND TO START XAMPP###
fi
就像我说的,我不使用 xampp,所以我不确定进程的名称,或者启动和停止它的命令,但如果您使用进程名称和启动/停止命令编辑它,这将起作用。另一个人说得对,只是没有用“停止/启动命令”来简化它
编辑:语法错误:)
答案2
我不是特别了解 Xampp 服务器套件,但你可以编写类似下面的东西,它执行 ps aux(显示所有进程)并对你想要运行的进程进行 grep,然后计算结果。grep [p]rocess 用于排除 grep 进程本身,你可以用 grep process | grep -v grep 来做同样的事情,但这是一个较短的版本。
if [ $(ps aux | grep [a]pache | wc -l) -gt 0 ]; then
echo "Process is running"
else
echo "Process is not running"
fi
希望这就是您要找的东西。