Nowa apt
komenda, obecny w Ubuntu od 14,04, wydaje się być bardzo przydatne przecięcia między funkcjonalnością apt-get
a apt-cache
jednak obecna wersja bash-completion
nie wie o tym ... co sprawia, że dużo trudniejszy w obsłudze.
Czy istnieje szybki sposób na dodanie tej funkcji do Bash, aby ułatwić korzystanie z apt
polecenia?
apt
bash
auto-completion
Oli
źródło
źródło
Odpowiedzi:
To pominięcie w
bash-complete
pakiecie, nieapt
. Wygląda na to, że zakończenie jeszcze nie istnieje, więc zebrałem razem, co mogę dlaapt
polecenia (nie jest to najlepiej udokumentowane polecenie, jakie kiedykolwiek istniało!)Poniżej znajduje się adaptacja istniejącego
apt-get
uzupełnienia (z usuniętymi elementami i dodanymi bitami zapt-cache
uzupełnienia). Uruchomsudoedit /usr/share/bash-completion/completions/apt
i wklej w następujący sposób:Następnie uruchom,
source ~/.bashrc
aby załadować zakończenie. Następnieapt show firef
+ Tabpowinien zakończyć.Może to zaoferować opcje, których już nie ma. Chyba przybity do najważniejszych poleceń (co może się zmienić w czasie), ale przynajmniej będzie to pomóc z typowych poleceń:
list
search
show
update
install
remove
upgrade
full-upgrade
edit-sources
dist-upgrade
purge
.Oczywiście, jeśli opiekun bash chce uzyskać powyższe, możesz to zrobić na licencji GPL (choć kusiłbym, aby zacząć od nowa, gdy
apt
zostanie to udokumentowane!)źródło
zsh
?Dlaczego nie skorzystać z oryginalnego zakończenia bash ?
Wypróbuj ten skrypt. Spowoduje to pobranie i zainstalowanie zakończenia bash
~/tmp/bash-completion
.Zaczynasz używać go z poleceniem
. ~/tmp/bash-completion/bash_completion.sh
, które można umieścić w~/.bashrc
pliku, lub - jeszcze lepiej - dowiązać symbolicznie do jakiegoś pliku w/etc/profile.d/
katalogu. Odinstaluj oryginalne zakończenie bash, abyś nie ładował obu jednocześnie.źródło
aptitude
,apt-get
aapt-cache
. Co dokładnie masz na myśli mówiąc o ukończeniu apt ?apt
jest nowe polecenie (ish), które jest w Trusty. Ma trochę apt-get, trochę apt-cache ... Wszystko z odrobiną dodatkowego rozkwitu w jednym miejscu.