通过一个命令更改目录并执行文件

问题描述 投票:0回答:3

当我想执行一个文件时,似乎我总是必须在执行它之前先“cd”到该文件的目录中,除非它因无法找到我的数据类型错误而失败。

如何绕过键入两个命令来执行程序?

示例:

cd /usr/local/bin/minecraft/
java -Xms512M -Xmx2048M -jar minecraft.jar

如何将其变成一行,以便在 Gnome3 中创建自定义启动器时将其作为我的 Exec=_ 行?

linux bash fedora launcher gnome-3
3个回答
90
投票

cd /usr/local/bin/minecraft/ && java -Xms512M -Xmx2048M -jar minecraft.jar
应该这样做


13
投票

我再次回答这个问题并进行一些扩展,以便其他人可能会发现这很有用。

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)

0
投票

或者(例如,如果传递到其他地方来执行)

    sh -c 'cd /usr/local/bin/minecraft; exec java -Xms512M -Xmx2048M -jar minecraft.jar'
© www.soinside.com 2019 - 2024. All rights reserved.