lubuntu wie man 2 befehle in der .desktop datei ausführt?

10

Ich habe eine .desktop-Datei erstellt, in /etc/xdg/autostartder der Befehl ausgeführt wird

Exec= disper -d LVDS,VGA-0 -r auto -e -t right

Jetzt möchte ich einen zweiten Befehl hinzufügen, der nach dem ersten Befehl ausgeführt wird. Wie mache ich das ?

Eikonikos Eikon
quelle
1
Erstellen Sie ein Bash-Skript, führen Sie mehrere Befehle darin aus und führen Sie das Bash-Skript von Ihrem .desktop?
Louis Matthijssen

Antworten:

11

Neben dem Aufrufen eines externen Bash-Skripts gibt es folgende Option:

Exec=sh -c "disper -d LVDS,VGA-0 -r auto -e -t right; echo Running other command; echo ...and an other one"
Algol
quelle
Ich benutze diese Variante, um einige conkyProbleme zu beheben : Exec=sh -c "gnome-terminal & killall -SIGUSR1 conky"
Tfb9
2

Nach dieser Quelle :

Der ExecSchlüssel muss eine Befehlszeile enthalten. Eine Befehlszeile besteht aus einem ausführbaren Programm, dem optional ein oder mehrere Argumente folgen.

Mein Verständnis davon ist, dass der ExecSchlüssel einen einzelnen Befehl unterstützt und dieser Befehl nur 1 ausführbare Datei enthalten kann, gefolgt von Argumenten für die ausführbare Datei.

Meine Tests zum Kombinieren von Befehlen:

firefox && gedit
firefox & gedit
firefox ; gedit

führte dazu, dass die zweite ausführbare Datei als Argument gelesen wurde, das den Text zu bestätigen scheint.

Mango
quelle
2

Am einfachsten ist es, alles in einem Skript zusammenzufassen. Zum Beispiel:

#!/bin/bash

disper -d LVDS,VGA-0 -r auto -e -t right
second_command_here

Speichern Sie es irgendwo, z. B. ~/bin/my_wrapper_script.sh, und machen Sie es ausführbar. Ändern Sie dann die ExecZeile Ihrer .desktopDatei so, dass sie darauf verweist:

Exec=/home/my_username/my_wrapper_script.sh
Scott Severance
quelle