嘿社区我需要知道如何运行.bat文件来将一串文本发送到运行.jar的.bat文件以使用该命令 .
还将从Windows任务计划程序运行在其他批处理文件中运行该命令的批处理文件 .
顺便说一下,这是一个Minecraft服务器 . 以下是用于在批处理文件中运行.jar的代码 . 命令语法只是 "stop" .
server.bat 代码
java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui.
因此,从长远来看,我需要创建一个名为 stop.bat 的批处理文件,以便从Windows Task Scheduler 运行 . 在 stop.bat 文件中,我需要该文件来激活 server.bat 文件中的命令,以便服务器停止,之后我可以运行 server.bat 再次启动服务器 .
有关如何做到这一点的任何想法?基本列出了如何将所有工作都放在下面 .
server-run.bat >>>“运行”>>> minecraft-server.jar
任务计划程序>>>“运行”>>> stop.bat
stop.bat >>>“在”>> server-run.bat中执行命令
1 回答
假设您的server-run.bat文件看起来像这样:
为了使文件能够跳转到通过修复批处理文件定义的某个标记,您应该将其更改为:
和stop.bat应该看起来像这样大概:
记住这只是直接从stop.bat运行server-stop-command的另一种方式 . 如果这不起作用(因为它需要一个环境变量或其他东西),这种方法也将失败!
(这是因为你不能直接干扰正在运行的批处理文件或其变量,你只能同时运行它的副本)
如果您想干扰正在运行的批处理文件,最简单的方法是定期检查文件是否存在:
和stop.bat就是这样做的:
这将导致server-running.bat
运行服务器
如果stopfile.txt为红外线,则每2秒检查一次
如果它,停止服务器
(记得用java代码更改虚线,我不知道它们是否正确)
希望这有助于最终