Czy istnieje sposób używania symboli wieloznacznych z aptitude
następującymi:
sudo apt-get remove openoffice*.*
Czy istnieje sposób używania symboli wieloznacznych z aptitude
następującymi:
sudo apt-get remove openoffice*.*
Odpowiedzi:
http://ubuntuforums.org/showthread.php?t=228309 wskazuje, że jest to możliwe dzięki konstrukcjom takim jak ~n<package name>
i to jest potwierdzone w instrukcji użytkownika http://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/ ch02s03s02.html .
~n
in ~n<package name>
to wzorzec wyszukiwania pasujących nazw pakietów. Możliwe jest również dopasowanie innych pól niż nazwy pakietów, patrz http://algebraicthunk.net/~dburrows/projects/aptitude/doc/en/ch02s03s05.html#tableSearchTermQuickGuide .
Oto przykład. Powiedz, że chcesz aptitude
pokazać każdą paczkę z „redshift” w nazwie, a następnie wydajesz
aptitude show ~nredshift
Powinien być łączony z innymi opcjami aptitude, takimi jak instaluj i usuwaj, np. Aby usunąć wszystkie zainstalowane pakiety z openoffice w nazwie, którą wydajesz
sudo aptitude -P remove ~nopenoffice
Upewnij się, że korzystasz z tej -P
opcji, gdy używasz wzorców wyszukiwania, aby zmusić aptitude do wyświetlenia monitu przed pobraniem, zainstalowaniem lub usunięciem pakietów (wzorzec wyszukiwania może mieć wiele dopasowań i będziesz monitowany przed wykonaniem akcji).
Jedną z rzeczy, której nie opracowałem, jest to, jak uzyskać dokładną funkcjonalność symboli wieloznacznych, np. Która openoffice*
pasuje do każdego łańcucha rozpoczynającego się od „openoffice” ( ~nopenoffice
pasuje do dowolnego łańcucha zawierającego „openoffice”). Być może możliwe jest obejście problemu, np. Wyszukiwanie zainstalowanych pakietów z określonym ciągiem w nazwach, a następnie karmienie aptitude ich nazwami.
Po prostu umieść to w cudzysłowie:
sudo apt-get remove "openoffice*"
W przeciwnym razie powłoka spróbuje dopasować to do plików bieżącego katalogu roboczego.
aptitude
i nie apt-get
. To rozwiązanie nie działa z aptitude.
Aby dopasować ciągi zaczynające się od nazwy pakietu, należy wstawić ^
przed nim.
na przykład:aptitude search ~n^openoffice