Jak uniknąć przewijania w poziomie w „statusie systemu”?


12

W długiej linii systemctl statuskonieczne jest przewijanie w poziomie, co utrudnia skopiowanie wyniku. Czy istnieje sposób na uzyskanie przełamania linii na końcu terminala (tak jak nano -$by to zrobił)?

Nie szukam obejścia takiego jak przekierowanie wyjścia do pliku tymczasowego i wyświetlenie go w edytorze obsługującym dane wyjściowe.

Używam Ubuntu 15.10.

Odpowiedzi:


21

Możesz użyć tej --no-pageropcji w połączeniu z --fullopcją, która zmusi linie do zawijania:

systemctl status --no-pager --full

wprowadź opis zdjęcia tutaj

Jeśli chcesz zachować funkcję stronicowania, możesz po prostu przesłać dane wyjściowe systemctl statusdo less/ morebezpośrednio, ponieważ podłączenie polecenia STDOUT do potoku wymusi wydrukowanie nieprzetworzonego wyniku:

systemctl status | less

Zastanawiam się, dlaczego nie musiałeś dodawać --fulldo długiej linii w złamanym drzewie procesu. Muszę to zrobić. Dzięki.
Karl Richter

@KarlRichter Przepraszamy, awarie wokół dziś wieczorem. Właściwie musiałem dodać --full, ale wypisywanie danych do potoku ( head) nie wymagało tego, i w pewnym momencie skończyło się na tym, że pomyślałem, że nie byłoby to przydatne, gdy byłby używany w połączeniu z --no-pager. Naprawdę potrzebujesz --full.
Kos

Czy istnieje możliwość zmiany pagera na MNIEJ?
Franklin Yu,

3
tak, używasz zmiennych środowiskowych PAGER lub SYSTEMD_PAGER, aby ustawić pager. Jeśli wstawisz pusty ciąg do zmiennej środowiskowej, możesz to przełączyć, err, wyłączyć funkcję. Ponadto zobacz zmienną środowiskową SYSTEMD_LESS.
Hontvári Levente
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.