Wie kombiniere ich zwei Befehle als Launcher?

8

Ich möchte diese beiden Befehle kombinieren:

rvm use 1.9.2

und

redcar

und kombinieren Sie sie, um als eigenständiges Programm ausgeführt zu werden. Aber als ich einen Launcher mit diesen beiden eingegebenen Befehlen erstellt habe, die durch Semikolon getrennt sind, funktioniert es einfach nicht.

Wie implementiere ich diese Funktion?

Frankel
quelle
Warum akzeptierst du keine Antwort?
Marco Sulla

Antworten:

12
sh -c "command 1 ; command 2"

hat den Job für mich direkt als Launcher erledigt: Erstellen Sie einfach eine Datei und speichern Sie sie als program.desktop. Lassen Sie dann die Ausführung als Programm zu (Rechtsklick -> Eigenschaften-> Berechtigungen -> Ausführung als Programm zulassen).

[Desktop Entry]
Version=1.0
Name=ProgramName
Comment=This is my comment
Exec=sh -c "command 1 ; command 2"
Icon=/home/alex/Pictures/icon.png
Terminal=false
Type=Application
Categories=Utility;Application;
MikWind
quelle
Yay! Ihre Technik funktioniert auch im Alt + F2-Startdialog. Normalerweise wird höchstens ein Befehl ausgeführt, zumindest in LXDE. Nun, etw. wie sh -c "xeyes & xeyes"Werke.
Tanius
Großartig! Dies funktioniert auch, um einer benutzerdefinierten Tastenkombination in 16.04 mehrere Befehle zuzuweisen (aus irgendeinem Grund funktioniert das einfache Schreiben von "Befehl 1; Befehl 2" nicht).
2
rvm use 1.9.2 && redcar

oder

rvm use 1.9.2 || redcar

Wenn der Befehl rvm fehlschlägt, wird redcar im zweiten Beispiel und nicht im ersten Beispiel ausgeführt.

Thomas
quelle
2

Ich bin nicht sicher, ob Gnome Launcher dies unterstützt, aber in einem Bash-Skript einen Befehl wie

program1; program2

bedeutet - Programm1 starten, dann Programm2 erst starten, nachdem das erste beendet ist.

Nach einigen Tests wäre es meiner Meinung nach am robustesten, ein einfaches Skript zu erstellen:

#!/bin/sh
rvm use 1.9.2 &
redcar &

Setzen Sie das ausführbare Bit darauf und erstellen Sie dann einen Launcher, der dieses Skript startet , dh /home/yourusername/start_redcar.sh

Als Bonus: Wenn Sie in Ihrem Home-Ordner ein Verzeichnis mit dem Namen "bin" erstellen, das Skript dort ablegen und "start_redcar" nennen, können Sie es vom Terminal oder über das sich öffnende Fenster "Befehl ausführen" starten Wenn Sie Alt-F2 drücken, geben Sie einfach den Befehlsnamen ein

Sergey
quelle
2

Um ein Befehlszeilenprogramm ( tiff2pdf) zu verwenden, wollte ich ein Terminal mit der Programmhilfe, dann einen zusätzlichen Hinweis zu einem verwandten Programm ( tiffcp) und dann eine Eingabeaufforderung, damit ich das Programm im selben Terminal verwenden kann. Ich habe einen Eintrag im Gnome-Laucher vom Typ Anwendung gemacht (NICHT Anwendung im Terminal!):

gnome-terminal -x bash -c "tiff2pdf -h; echo '** See also tiffcp'; exec bash"
Bruce
quelle