lubuntu jak wykonać 2 polecenia w pliku .desktop?

11

Utworzyłem plik .desktop, w /etc/xdg/autostartktórym uruchamia się polecenie

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

Teraz chcę dodać drugie polecenie, które będzie uruchamiane po pierwszym poleceniu. Jak mam to zrobic ?

Eikonikos Eikon
źródło
1
Stwórz skrypt bash, uruchom wiele poleceń i uruchom skrypt bash ze swojego .desktop?
Louis Matthijssen

Odpowiedzi:

12

Oprócz wywołania zewnętrznego skryptu bash dostępna jest ta opcja:

Exec=sh -c "disper -d LVDS,VGA-0 -r auto -e -t right; echo Running other command; echo ...and an other one"
algol
źródło
Używam tej odmiany, aby rozwiązać niektóre conkyproblemy: Exec=sh -c "gnome-terminal & killall -SIGUSR1 conky"
Tfb9,
2

Według tego źródła :

ExecKlucz musi zawierać wiersz polecenia. Wiersz poleceń składa się z programu wykonywalnego, po którym opcjonalnie następuje jeden lub więcej argumentów.

Rozumiem powyższe, że Execklucz obsługuje jedno polecenie i że to polecenie może zawierać tylko 1 plik wykonywalny, a po nim argumenty dla pliku wykonywalnego.

Moje testy łączenia poleceń:

firefox && gedit
firefox & gedit
firefox ; gedit

spowodowało, że drugi plik wykonywalny został odczytany jako argument, który wydaje się potwierdzać tekst.

mango
źródło
2

Najłatwiej jest to wszystko zawrzeć w skrypcie. Na przykład:

#!/bin/bash

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

Zapisz go gdzieś, na przykład ~/bin/my_wrapper_script.shi spraw, aby był wykonywalny. Następnie zmień Execlinię .desktoppliku, aby wskazywała na to:

Exec=/home/my_username/my_wrapper_script.sh
Scott Severance
źródło