我正在寻找一种方法来确保它在启动之前尚未在其他计算机上运行。
我想到的最好方法是检查 MySQL 文件夹中是否存在现有的 .pid。
最简单的事情是修改快捷方式,但我认为这是不可能的。
所以我需要做几件事。
- 找出 MySQL 的存储位置
- 检查 .pid 文件是否存在,如果发现该文件,则会抛出错误,并用文件名减去扩展名来提示正在运行该文件的机器。
- 如果不存在,则继续启动 wamp,就像通常使用快捷方式一样。
完成。
如果有必要,我们可以询问用户一次 wamp 的存储位置,那么它就位于 %wamp%\bin\mysql 我尝试了这个脚本,但它没有正确执行,它打开了 2 个 cmd 窗口,然后暂停了。 谢谢 熊
@echo off
cd "C:\google_drive\server\wamp64"
forfiles /p bin\mysql\ /m *.pid /s /c "cmd /c goto error"
start wampmanager.exe
exit
:error
echo I'm sorry, Mysql is already running so I can't start WAMP for you. Shutdown WAMP on @FNAME before running again."
pause
最佳答案
您可以使用以下命令检查文件是否存在:
if exist "C:\google_drive\server\wamp64\bin\mysql\*.pid
但是根据你的描述,我猜,可能有多个 .pid
文件,所以有一个更好的选择:
setlocal enabledelayedexpansion
set "running="
for %%a in ("C:\google_drive\server\wamp64\bin\mysql\*.pid") do set "running=!running! %%~na,"
if "%running%" neq "" (
echo I'm sorry, Mysql is already running so I can't start WAMP for you.
echo Shutdown WAMP on: %running% before running again.
pause
goto :eof
)
start wampmanager.exe
关于mysql - 在启动 wamp 之前如何检查现有的 .pid?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44231509/