Jestem przyzwyczajony do tworzenia usług upstart z plikiem w /etc/init/<service>.conf
i działa idealnie dobrze, jedyne, co chciałbym, to mieć uzupełnianie tabulatorów w taki sam sposób, jak każda usługa w /etc/init.d/ ma teraz.
Podczas pisania usługi sudo xx powinna pojawić się nazwa usługi.
Czy istnieje sposób na dodanie usług upstart do tej listy autouzupełniania?
Odpowiedzi:
Każdy pakiet, który udostępnia standardowego demona korzystającego z upstartu, jest wymagany do zapewnienia dowiązania symbolicznego zgodnie
/etc/init.d
z polityką Debiana. Autouzupełnianie już działa. Upewnij się, że masz zainstalowany pakiet, jeśli masz problemy.sudo service name
bash-completion
Jeśli tworzysz własne zadania upstart, to dowiązanie symboliczne, aby polubić inne zadania upstart, już działa. Dzięki temu twoje własne prace będą działały w ten sam sposób.
/etc/init.d/your_job
/lib/init/upstart-job
Istnieją specjalne zadania upstart, w
/etc/init
których nie ma odpowiedniego wpisu/etc/init.d
. To są wyjątki. Z polityki Debiana:Te wyjątki obecnie nie działają
bash-completion
. Jednakże, można użyćstart
,stop
,restart
ireload
bezpośrednio, bezservice
, i autouzupełnianie będzie działać. Na przykładsudo start shut
poprawnie autouzupełnianie. Ale zwykle nie powinieneś bezpośrednio wywoływać zadań upstart, które nie mają odpowiedniegoinit.d
wpisu.Uwaga: przetestowałem to na Saucy. Jeśli wsparcie nie pojawia się w starszej wersji, być może nie jest ono tam dostępne (ale dostaniesz je wkrótce po uaktualnieniu do wystarczająco nowej wersji).
źródło