Горизонтальна прокрутка меншими кроками з меншою -S


25

Я використовую lessдля аналізу журналів доступу до HTTP. Я хочу переглядати все акуратно в одних рядках, тому я використовую -S.

Проблема в мені полягає в тому, що перша третина мого вікна терміналу займається метаданими, які мене не цікавлять. Коли я використовую клавіші зі стрілками для прокрутки праворуч, я виявляю, що вона прокручує повз початок інформації, яка мені цікава!

Я міг би просто видалити початок кожного рядка, але я не знаю, чи знадобляться мені ці дані в майбутньому, і я б не мав потреби підтримувати окремі файли або запускати сценарій щоразу, коли хочу переглянути деякі журнали.

Приклад

Цей рядок:

access.log00002: 10.0.0.0 - USER_X [07 / листопада / 2013: 16: 50: 50 +0000] "GET / some / long / URL"

Перейдіть до: ng/URL"

Питання

Чи є спосіб я прокручувати меншими кроками, ні за символом, ні за словом?

Відповіді:


19

Єдині команди горизонтальної прокрутки прокручуються на половину екрана, але ви можете передавати числовий аргумент, щоб вказати кількість символів, наприклад, набравши 4 Rightпрокрутки праворуч на 4 символи. Менше насправді не має поняття "поточний рядок" і не розбиває рядок на слова, тому немає можливості прокручувати слово за часом.

Ви можете визначити команду, яка прокручується за фіксованою кількістю символів. Наприклад, якщо ви хочете, щоб Shift+ Leftі Shift+ Rightпрокручували одночасно 4 символи:

  1. Визначте контрольні послідовності, які ваш термінал надсилає для цих комбінацій клавіш. Термінали послати сукупність електронних даних , які починаються з втечею (яке може бути записано \e, \033, ^[в різних контекстах) характером для функціональних клавіш і keychords. Натисніть Ctrl+ V Shift+ Leftу запиті на оболонку: він вставляє символ втечі буквально (ви побачите ^[на екрані) замість того, щоб він оброблявся вашою оболонкою, і вставляв решту послідовності. Звичайна установка має Shift+ Leftі Shift+ Rightпосил \eO2Dі \eO2Cвідповідно.

  2. Створіть файл, що викликається, ~/.lesskeyта додайте наступні рядки (відрегулюйте, якщо ваш термінал надсилає різні послідовності відходу):

    #command
    \eO2D noaction 4\e(
    \eO2c noaction 4\e)
    

    Потім запустіть lesskey, який перетворює читабельний для людини ~/.lesskeyу бінарний файл, ~/.lessякий lessчитає при запуску.


19

Ви можете скористатися опцією "- #", щоб встановити кількість стовпців для горизонтальної прокрутки.

З чоловічої сторінки:

- # або --shift
Вказує за замовчуванням кількість позицій для горизонтальної прокрутки в командах ПРАВА ТА ЛІВНЯ. Якщо вказане число дорівнює нулю, воно встановлює за замовчуванням кількість позицій на одну половину ширини екрана.

Приклад (встановити горизонтальну прокрутку на 10 стовпців):

менше -S - # 10 my_file


Чи є можливість додати цю опцію до якогось файлу конфігурації, щоб мені не потрібно було переходити - параметр №1 кожного разу, коли я набираю команду?
Трисмегістос

1
@Trismegistos Так, ви можете встановити змінні оточення в ~/.bashrcсexport LESS="-# 1"
wisbucky

Ви також можете встановити відсоток ширини екрана, якщо число починається з десяткової крапки. Наприклад, -# .25буде прокручуватися на 1/4 ширини екрана.
wisbucky


2

Альтернативою є використання mostпейджера.

In- mostno-wrap ( -S) є типовим і Rightпрокручує один стовпець праворуч замість половини екрана. Використовуйте >або Tabдля швидкого прокручування.

Іншою альтернативою є w3mпейджером (також один з кращих терміналів веб - браузерів) , де ви можете використовувати <, >а також, і ,, .для більш дрібного зерна прокруткою ( ті ж клавіші на клавіатурі Qwerty).


Це не правда. Більше - обгортання за замовчуванням, і немає опції -S.
Трисмегістос

1
@Trismegistos, я говорю не про more(для яких є десятки реалізацій), а про most(Джон Е. Девіс, я не знаю жодної іншої реалізації).
Стефан Шазелас
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.