执行一个文件时,似乎我总是必须先'cd'进入该文件所在的目录,然后才能执行它,除非出现无法找到数据的错误。如何避免输入两个命令来执行程序?
示例:
cd /usr/local/bin/minecraft/
java -Xms512M -Xmx2048M -jar minecraft.jar
我该如何将其转换为一行代码,以便在Gnome3中创建自定义启动器时可以将其作为我的Exec=_行?
cd /usr/local/bin/minecraft/ && java -Xms512M -Xmx2048M -jar minecraft.jar
应该可以完成它。
我再次回答这个问题,并加上一些扩展,以便他人可以从中受益。
cd /usr/local/bin/minecraft/ && java -Xms512M -Xmx2048M -jar minecraft.jar
这个命令肯定会起作用。但在运行此命令后,您将停留在 /usr/local/bin/minecraft/
目录中。如果您在 bash 脚本 中使用此命令,则所有后续命令都将在此目录中执行。
如果您想在您期望的目录中运行此命令并立即回到之前的位置,请使用括号括起来,即:
(cd /usr/local/bin/minecraft/ && java -Xms512M -Xmx2048M -jar minecraft.jar)
或者(例如,如果在其他地方执行)
sh -c 'cd /usr/local/bin/minecraft; java -Xms512M -Xmx2048M -jar minecraft.jar'
cd
失败了,Java命令甚至不会被执行。 - Atmocreations