Jak uzyskać polecenie „top”, aby zawinąć dane wyjściowe?


20

Kolumna „polecenie” zostaje obcięta przez szerokość ekranu i nie widzę jej ostatniej części.

Próbowałem zmniejszyć rozmiar czcionki, aby zobaczyć dłuższą część wiersza polecenia, ale nadal nie działa.


Jakie polecenie generuje dane wyjściowe?

Wiem, że to nie odpowiada bezpośrednio na twoje pytanie, ale htopszukałbym znacznie ładniejszego interfejsu top. Umożliwi to przewijanie za pomocą klawiszy strzałek.

Czy możesz wyjaśnić, dlaczego nie zmniejszono rozmiaru czcionki?
Stephen Quan

to działa, ale nie na tyle dla mnie, aby zobaczyć całą linię .. linia poleceń jest dość długi
sureshvv

Odpowiedzi:


10

top -bcn1 -w512

Eleganckim rozwiązaniem jest skorzystanie z tej opcji . Według strony podręcznika maksymalna szerokość wynosi 512 znaków, więc będziesz potrzebować innego rozwiązania dla wszystkiego, co przekracza tę wartość. Prawdopodobnie chcesz także zobaczyć pełną długość poleceń, więc skorzystaj z opcji. Musimy uruchomić w „trybie wsadowym”, w przeciwnym razie będzie nadal odcinał polecenia za pomocą „+”. Tryb wsadowy robi bałagan, ponieważ drukuje wszystkie zadania co sekundę, więc możemy użyć opcji, aby wydrukować tylko jedną instancję.-w [number]-ctop-b-n1

Więcej informacji znajduje się na górnej stronie man .


1
Musisz sprawdzić stronę podręcznika systemowego; opcje te nie istnieją we wszystkich wersjach top.
Scott

w moim Ubuntu 18.04 man topmówi -c :Command-line/Program-name toggle ... Starts top with the last remembered 'c' state reversed. co oznacza, -cże wyświetlałby pełne polecenia tylko co 2 wykonanie.
gilad mayani

21

Domyślnie pole poleceń jest automatycznie obcinane dla lepszego odczytu.

Musisz biec

top -c

aby wyświetlić pełne polecenie, w zależności od możliwości okna konsoli można przewinąć w prawo i zobaczyć pełne polecenie.


To po prostu domyślnie wyświetla pełny wiersz poleceń - a właściwie wszystko, co może być widoczne w jednym wierszu. Nie widzę żadnej zdolności przewijania. Chcesz powiedzieć, że po prostu muszę ustawić okno na większą szerokość?

Tak, na początek. Jakiego rodzaju okna używasz? czy to jest Putty, terminal dowodzenia Dos, terminal Gnome? którekolwiek z nich pozwoli ci na przewijanie w poziomie.
posiadacz pierścienia

nie widzę przewijania w poziomie w PuTTY
bbodenmiller

8

Jak powiedział Daniel Arndt, możesz także użyć htop zamiast top. Jest obecnie dostępny we wszystkich dystrybucjach i zapewnia lepsze liczby (szczególnie w przypadku użycia pamięci)

Jest również znacznie łatwiejszy w użyciu i ładniejszy, nawet jeśli jest ograniczony do kolorów terminala. Możesz na przykład przewinąć w prawo, aby zobaczyć pełne polecenie, lub możesz zabić proces za pomocą prostego klawisza F9. Możesz także zobaczyć pełne drzewo za pomocą klawisza „t”.


To nie odpowiada na pytanie, ale jest sugestią dla innego programu. htopjest naprawdę fajnym programem, ale pytanie dotyczyło wyjścia top. Proszę pozostać na temat.
drumfire,

2
@drumfire oferuje alternatywy jest całkowicie aktualne i tematyczne. Powinno to być oczywiste przez fakt, że PO zaakceptował tę odpowiedź prawie trzy lata temu.
terdon

3

Jest to hacking, ale możesz zmodyfikować zachowanie, dostosowując zmienne powłoki $ COLUMNS i $ LINES przed uruchomieniem top:

export COLUMNS=$((COLUMNS*2))
export LINES=$((LINES/2))
top

Przekona to powłokę, że masz dwa razy więcej kolumn do napisania (i pół tyle wierszy, aby to zrównoważyć). Jeśli używasz bash, możesz uruchomić shopt -s checkwinsizewcześniej, co powie mu, aby ponownie obliczyć te wartości po wyjściu z góry. W przeciwnym razie możesz po prostu wykonać kopię zapasową / przywrócić te wartości (lub po prostu zmienić rozmiar okna).


0

Możesz zaprojektować ekran partii, który zawiera góry -b -n 1 i ps , na przykład:

while (true)
do
  clear
  top -b -n 1
  ps
  sleep 5
done

Będzie to obsługiwać wyświetlanie:

  • PID
  • procesor
  • Nieskalowana linia poleceń

0

Możesz to wypróbować. Spowoduje to wydrukowanie tylko jednego wystąpienia topze stałą szerokością i zakończeniami, aby uzyskać wynik.

top -n1 -w80

Możesz nawet potokować dane wyjściowe do pliku.

top -n1 -w80 > top_output.txt

0

Próbuję zwiększyć szerokość wyjściowego ekranu za pomocą poniższego polecenia.

eksport KOLUMNY = 197 top -u -cbn1> top.output

Tutaj 197 jest po prostu zmienne. Spróbuj zwiększyć zgodnie ze swoimi wymaganiami i wymaganymi szczegółowymi danymi wyjściowymi.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.