Utworzyłem plik .desktop, w /etc/xdg/autostart
któ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 ?
Utworzyłem plik .desktop, w /etc/xdg/autostart
któ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 ?
Odpowiedzi:
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"
conky
problemy: Exec=sh -c "gnome-terminal & killall -SIGUSR1 conky"
Według tego źródła :
Exec
Klucz 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 Exec
klucz 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.
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.sh
i spraw, aby był wykonywalny. Następnie zmień Exec
linię .desktop
pliku, aby wskazywała na to:
Exec=/home/my_username/my_wrapper_script.sh
.desktop
?