在 13.04 中双击无法执行程序(*.sh)

在 13.04 中双击无法执行程序(*.sh)

我使用 Ubuntu 托管许多服务器、一些 minecraft、一些云服务和许多网站。不幸的是,升级到 Ubuntu 13.04 后,即使设置为允许执行 craftbukkit.sh,它也不会启动,只能在 getit 中打开。我快要失去它了,因为它已经宕机了 3 个小时,而且一个接一个的人来问我为什么它都宕机了。我快要生气了。

我也在服务器上运行 XAMPP 1.7.7(由于各种原因不是 1.8.1),它显示已加载,但实际上没有。连接到本地主机没有任何反应。有人能帮忙吗?谢谢!

答案1

如果您希望在双击时执行它,请转到 Nautilus > 文件菜单 > 首选项 > 行为,然后在那里更改首选项:将“可执行文本文件”设置为“运行可执行文件...”或“每次询问”(感谢 Pablo 改进答案)。

答案2

/home/server/Desktop/minecraft/craftbukkit.sh我看到您找到了一种解决方法,但对您来说可能更友好、更优雅的方法是在文本编辑器中打开并添加:

# before anything is done, probably top of the script (but under the #!/bin/sh)
PWD=$(pwd)  # save the previous location
cd /home/server/Desktop/minecraft
...
...
...
...
# after everything is done, probably near bottom of the script
cd $PWD  # restore the previous location

如果当前目录是问题所在(正如您在解决方案中所暗示的那样),这应该允许您从任何地方启动脚本,并且它将正常工作。

答案3

好吧,不一定是我想要的方式,但我找到了方法。我必须“cd /home/server/Desktop/minecraft/craftbukkit.sh”才能到达该位置(在终端内),然后执行“/home/server/Desktop/minecraft/craftbukkit.sh”来运行文件。它有效,但不太方便。我也通过同样的过程修复了我的网站。我希望这个问题能尽快解决!

相关内容