Jak wykluczyć niektórych użytkowników z ekranu głównego Linux?

16

Na topekranie domyślnie pokazuje procesy wszystkich użytkowników. Jak wykluczyć niektórych użytkowników (na przykład roota i nikogo) z górnego ekranu w czasie rzeczywistym?

garconcn
źródło

Odpowiedzi:

16

Prawidłowa odpowiedź to: -U '!root'(lub -u '!root'w niektórych Ubuntus). Zostało to wprowadzone w górnej wersji 3.2.9:

man top dla opcji -U:

Przygotowanie wykrzyknika („!”) Do identyfikatora lub nazwy użytkownika instruuje top, aby wyświetlał tylko procesy z użytkownikami niezgodnymi z podanym.

Pamiętaj, aby umieścić wykrzyknik i nazwę użytkownika w pojedynczym cudzysłowie.

Mediolan
źródło
3
Uwaga: działa to w nowszych wersjach top. 3.3.9 ma to, a 3.2.8 nie.
Deer Hunter
3
Co dziwne, na Ubuntu 14.04 musiałem użyć -uzamiast -U.
muru
4
Musiałem użyć, top -u '!root'aby NIE !interpretować powłoki jako powłoki (uważam, że tak się dzieje bez pojedynczych cudzysłowów).
steveb
Możesz interaktywnie pisać, ua następnie!root
Dr Beco
2
Jeszcze lepiej dodaj filtr, aby wykluczyć wszystkich użytkowników systemu, takich jak Oi filtruj RUID>999. RUIDNajpierw musisz dodać kolumnę.
Dr Beco,
3

Począwszy od wersji 3.3, możesz po prostu pisać upodczas topdziałania i wprowadzać ten !rootciąg.

Dr Bombay
źródło
2

top -U rootpokazuje tylko procesy od roota. Niestety jest to jedyna opcja ograniczania użytkowników według strony podręcznika.

Tim
źródło
Ale jeśli chcesz odstąpić od korzystania z góry, możesz zrobić, ps aux | grep -v $USERNAMEaby zobaczyć wszystkie procesy oprócz określonego użytkownika.
Tim
Dzięki. Znam te dwa polecenia. Szukałem w okolicy, ale nie znalazłem nikogo, kto by o to zapytał. góra -u widzi jednego użytkownika, ale chcę widzieć więcej użytkowników w czasie rzeczywistym.
garconcn
4
do góry | egrep -ve "(root | knoppix)"? Zmodyfikuj zgodnie z własnymi wymaganiami.
dtbnguyen
1

Zgodnie z sugestią dr Beco powyżej, najbardziej ogólny mechanizm filtrowania używa „o / O”, aby aktywować „Inne filtrowanie” podczas gdy w topcelu wykluczenia / włączenia więcej niż jednego użytkownika.

Na przykład, aby wykluczyć „root” i „nikt”, można użyć polecenia o!USER=root<enter>o!USER=nobody .

Dzięki tej opcji filtrowania możliwe jest wiele interesujących widoków!

Kapil
źródło
Myślę, że to jedyna odpowiedź, która odpowiada na pytanie: „wyklucz niektórych użytkowników (na przykład root i nikt)”, tj. Wykluczając więcej niż jednego użytkownika. Być może nie było to możliwe w 2012 r.
Ramashalanka