Перегляд текста командами more і less

Матеріал з Вікі ЦДУ
Версія від 12:03, 12 травня 2016; 189268 (обговореннявнесок)

(різн.) ← Попередня версія • Поточна версія (різн.) • Новіша версія → (різн.)
Перейти до: навігація, пошук

Перегляд тексту командами more і less

Для зручного перегляду тексту з файлу або з стандартного виводу програми використовуються програми посторінкового гортання - "пейджери".

more

Найпростіша програма для посторінкового перегляду тексту more використовується з ім'ям файлу (ів) в якості параметра або як остання команда в ланцюжку перенаправлень вводу / виводу. За допомогою опцій + <число> або + / <зразок тексту> можна почати перегляд з потрібного рядку.

Перегляд файлу file1 з 20-го рядка

more +20 file1

Пошук у виводі програми Grep підрядку 13:00 і перегляд виведення, починаючи з цього місця

grep ntpd /var/log/messages | more +/13:00

More вміє гортати текст вперед. Текст з файлу, в принципі, можна перегорнути назад, але це нетипове використання більше.

Основні інтерактивні команди more схожі на команди редактора VI:

h - допомога
q - вихід
SPACE - перегорнути один екран
d - перегорнути підлогу екрана
RETURN - перегорнути один рядок
/ pattern - перегорнути до рядка містить підрядок візерунок
n - повторити пошук підрядка
= - Показати номер поточного рядка
n - перейти до наступного файлу
p - повернутися до попереднього файлу
f - надрукувати ім'я поточного файлу і номер рядка в ньому
! - Запуск shell-команди

Тільки при перегляді файлів:

b - перегорнути екран назад
v - викликати текстовий редактор, встановивши курсор на поточний рядок

less

less - істотно більш розвинена команда для гортання тексту. При читанні даних зі стандартного введення вона створює буфер, який дозволяє перегортати текст як вперед, так і назад, а також шукати як у напрямку до кінця, і по так напрямку до початку тексту. Заповнення буфера йде блоками по 64 Кбайт, тому (якщо текст на стандартне введення подається повільно) можлива ситуація "підвисання", коли less показує чергові рядки, які надійшли, але не дозволяє виконати будь-яку команду.

less розуміє всі команди more плюс свої.

h - виклик довідки
q - вихід
SPACE - на екран вперед
b - перегорнути екран назад
k і j або стрілки вгору і вниз - вертикальна прокрутка по рядку
g - перейти на 1-ий рядок
<N> g - перейти на рядок N
G - перейти на останній рядок
F - перейти на останній рядок файлу і очікувати записи нових рядків (аналог tail -f, не працює зі стандартним вводом)
/ pattern - пошук за шаблоном вперед
? pattern - пошук за шаблоном назад
n - наступне збіг
N - попереднє збіг
mбуква - відзначити позицію буквою
'Буква (апостоф і буква) - перейти на зазначену позицію
! - Запуск shell-команди (% - ім'я поточного файлу, наприклад: cat%> /tmp/foobar.txt)

Тільки для файлу

v - запуск редактора

Тільки для стандартного вводу

s filename - зберегти виведений текст в файл filename

Параметри тексту less можна вказувати як у вигляді опцій, так і в інтерактивному режимі. Повторне введення опції в інтерактивному режимі скасовує дію.

-g - при пошуку підсвічувати тільки поточне знайдене слово (за замовчуванням підсвічуються всі входження)
-N - показувати номери рядків