在CentOS 5上运行java的可执行文件
我正在尝试制作一个简单的文件,这样我就可以在SSH中调用它,它将启动我的minecraft服务器。 我尝试使用以下代码创建名为start.bat的批处理文件: java-Xmx512M-Xmx512M-jar-craftbukkit-1.2.5-R1.0.jar-nogui 但是,当我在SSH中运行它时: $cd/Minecraft/server\u 1/ $start.bat在CentOS 5上运行java的可执行文件,centos,minecraft,Centos,Minecraft,我正在尝试制作一个简单的文件,这样我就可以在SSH中调用它,它将启动我的minecraft服务器。 我尝试使用以下代码创建名为start.bat的批处理文件: java-Xmx512M-Xmx512M-jar-craftbukkit-1.2.5-R1.0.jar-nogui 但是,当我在SSH中运行它时: $cd/Minecraft/server\u 1/ $start.bat SSH返回它是无效或未知的命令。有没有其他方法可以快速启动服务器的命令/文件?我将使用什么文件扩展名使其工作?如果我将
SSH返回它是无效或未知的命令。有没有其他方法可以快速启动服务器的命令/文件?我将使用什么文件扩展名使其工作?如果我将该java命令粘贴到SSH中并运行它,它会工作,但我更希望有一个文件。默认情况下,当前工作目录不包括在您的
路径中,因为这对多用户系统是一个安全风险。(甚至在单用户机器上也是一个潜在的麻烦。)您可以使用/start.bat
启动程序
由于您使用的是Windows命名约定,我想您也忘了设置执行模式位——而且您可能还忘了文件顶部的
试试这个:
#!/bin/sh
java -Xmx512M -Xmx512M -jar craftbukkit-1.2.5-R1.0.jar nogui
在此文件上运行chmod 500
。(严格地说,555
也可以工作,如果你不介意机器上的其他人执行文件。但是他们不需要,所以不要让他们这样做。)有关模式的更多详细信息,请参阅chmod(1)
手册--1
位表示可执行,2
位表示可写,而4
位意味着可读
——因此,5
是可执行和可读的
然后,如果要运行脚本,请按如下方式运行:
cd /Minecraft/server_1
./start.bat
注意/
——这意味着shell应该开始搜索当前工作目录中的可执行程序。(如果当前工作目录的bin
子目录包含start.bat
可执行文件,则它可能是/bin/start.bat
。默认情况下,当前工作目录不包括在路径中,因为它对多用户系统存在安全风险。(甚至在单用户机器上也是一个潜在的麻烦。)您可以使用/start.bat
启动程序
由于您使用的是Windows命名约定,我想您也忘了设置执行模式位——而且您可能还忘了文件顶部的
试试这个:
#!/bin/sh
java -Xmx512M -Xmx512M -jar craftbukkit-1.2.5-R1.0.jar nogui
在此文件上运行chmod 500
。(严格地说,555
也可以工作,如果你不介意机器上的其他人执行文件。但是他们不需要,所以不要让他们这样做。)有关模式的更多详细信息,请参阅chmod(1)
手册--1
位表示可执行,2
位表示可写,而4
位意味着可读
——因此,5
是可执行和可读的
然后,如果要运行脚本,请按如下方式运行:
cd /Minecraft/server_1
./start.bat
注意/
——这意味着shell应该开始搜索当前工作目录中的可执行程序。(如果您当前的工作目录中有一个带有可执行文件的start.bat的bin
子目录,那么它可能是/bin/start.bat
。是start.bat可执行文件吗?确保你有/bin/sh作为文件的第一行。此外,目录可能不在路径中,请尝试以下操作:
$ chmod 555 start.bat
$ ./start.bat
start.bat是否可执行?确保你有/bin/sh作为文件的第一行。此外,目录可能不在路径中,请尝试以下操作:
$ chmod 555 start.bat
$ ./start.bat
.. 你在那里的时候为什么不包括错误信息?这将是另外一行…不,SSH只是说“start.bat是一个未知命令”,顺便说一句,SSH
什么也没说——是bash
报告了该命令未知。。。你在那里的时候为什么不包括错误信息?这应该是另外一行……不,SSH只是说“start.bat是一个未知命令”,顺便说一句,SSH
什么也没说——是bash
报告了该命令未知。