2012-11-29 22 views
14

Quando voglio eseguire un file, sembra che io debba sempre dapprima "scriverlo" nella directory di quel file prima di eseguirlo, a meno che non fallisca su un can't-find-my -dataz errore di tipo.Cambia directory ed esegui il file in un comando

Come posso andare in giro digitando due comandi per eseguire solo un programma?

Esempio:

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

Come posso fare che in una sola linea, in modo che posso mettere la mia Exec = _ linea quando si crea un launcher personalizzato in Gnome3?

risposta

34

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

+0

Bingo! Non ricordavo. (Non posso accettare la tua risposta per altri 10 minuti ...) Grazie per la risposta veloce lampo! –

+0

+1: Il vantaggio di questo comando è che il 'cd' fallisce, il comando java non viene nemmeno eseguito – Atmocreations

+0

Sto facendo lo stesso usando Python os.system (" start/B start cmd.exe @cmd/k cd && ") ma il secondo comando finisce per essere eseguito prima che il mio comando Cambia directory, quindi non riesca, una soluzione alternativa per questo? Grazie a – user2176576

0

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

+1

mentre questo funziona per minecraft.jar, che non funzionerà con minecraft-server.jar, perché non riesce a trovare i suoi file di configurazione che si trovano nella directory ... incolpare il dev se vuoi, ma è vero. –