Команда less в Linux с примерами
Команда Less - это утилита linux, которую можно использовать для чтения содержимого текстового файла по одной странице (одному экрану) за раз. У него более быстрый доступ, потому что, если файл большой, он не обращается к полному файлу, а обращается к нему постранично.
Например, если это большой файл, и вы читаете его с помощью любого текстового редактора, то весь файл будет загружен в основную память, но команда less не загружает весь файл, а загружает его по частям, что ускоряет работу. .
синтаксис:
меньше имени файла
Примечание. В следующих примерах я использую вывод dmesg в качестве входных данных для команды less.
Например: если вы хотите прочитать содержимое команды dmesg, лучше использовать ее с командой less
dmesg | less
Выход :
[0.000000] микрокод: микрокод обновлен до версии 0x21, дата = 20.11.2017 [0.000000] random: get_random_bytes вызывается из start_kernel + 0x42 / 0x504 с crng_init = 0 [0.000000] Linux версии 4.13.0-26-generic (buildd @ lgw01-amd64-031) (версия gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1 ~ 16.04.5)) # 29 ~ 16.04. 2-Ubuntu SMP Вт, 9 января, 22:00:44 UTC 2018 (Ubuntu 4.13.0-26.29 ~ 16.04.2-generic 4.13.13) [0.000000] Командная строка: BOOT_IMAGE = / boot / vmlinuz-4.13.0-26-generic.efi.signed root = UUID = 993a37f2-7ea9-43a3-b652-5b26bb879797 ro quiet splash vt.handoff = 7 [0.000000] KERNEL поддерживает процессоры: [0,000000] Intel GenuineIntel [0.000000] AMD AuthenticAMD [0.000000] Кентавр КентаврХаулс [0.000000] x86 / fpu: поддержка функции XSAVE 0x001: 'регистры с плавающей запятой x87' [0.000000] x86 / fpu: Поддержка функции XSAVE 0x002: «Регистры SSE» [0.000000] x86 / fpu: поддержка функции XSAVE 0x004: 'Регистры AVX' [0,000000] x86 / fpu: xstate_offset [2]: 576, xstate_sizes [2]: 256 [0.000000] x86 / fpu: включены функции xstate 0x7, размер контекста составляет 832 байта, с использованием «стандартного» формата. [0.000000] e820: физическая карта RAM, предоставленная BIOS: [0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000006efff] можно использовать [0.000000] BIOS-e820: [mem 0x000000000006f000-0x000000000006ffff] зарезервировано [0.000000] BIOS-e820: [mem 0x0000000000070000-0x0000000000087fff] можно использовать [0.000000] BIOS-e820: [mem 0x0000000000088000-0x00000000000bffff] зарезервировано [0.000000] BIOS-e820: [mem 0x0000000000100000-0x0000000094d5ffff] можно использовать [0.000000] BIOS-e820: [mem 0x0000000094d60000-0x0000000095d5ffff] зарезервировано [0.000000] BIOS-e820: [mem 0x0000000095d60000-0x000000009a36efff] можно использовать [0.000000] BIOS-e820: [mem 0x000000009a36f000-0x000000009aebefff] зарезервировано [0.000000] BIOS-e820: [mem 0x000000009aebf000-0x000000009afbefff] ACPI NVS [0.000000] BIOS-e820: [mem 0x000000009afbf000-0x000000009affefff] данные ACPI [0.000000] BIOS-e820: [mem 0x000000009afff000-0x000000009affffff] можно использовать [0.000000] BIOS-e820: [mem 0x000000009b000000-0x000000009f9fffff] зарезервировано [0.000000] BIOS-e820: [mem 0x00000000e0000000-0x00000000efffffff] зарезервировано [0.000000] BIOS-e820: [mem 0x00000000fe101000-0x00000000fe112fff] зарезервировано [0.000000] BIOS-e820: [mem 0x00000000feb00000-0x00000000feb0ffff] зарезервировано [0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] зарезервировано [0.000000] BIOS-e820: [mem 0x00000000fed00000-0x00000000fee00fff] зарезервировано [0.000000] BIOS-e820: [mem 0x00000000ffc00000-0x00000000ffffffff] зарезервировано [0.000000] BIOS-e820: [mem 0x0000000100000000-0x000000025f5fffff] можно использовать [0.000000] Защита NX (Execute Disable): активна [0.000000] e820: обновить [mem 0x93c97018-0x93ca7057] usable ==> usable [0.000000] e820: обновить [mem 0x93c97018-0x93ca7057] usable ==> usable [0.000000] e820: обновить [mem 0x93c8a018-0x93c96057] usable ==> usable [0.000000] e820: обновить [mem 0x93c8a018-0x93c96057] usable ==> usable :
наиболее часто используемые Опции:
-E : causes less to automatically exit the first time it reaches end of file.
-f : forces non-regular file to open.
-F : causes less to exit if entire file can be displayed on first screen
-g : highlight the string which was found by last search command
-G : suppresses all highlighting of strings found by search commands
-i : cause searches to ignore case
-n : suppresses line numbers
-p pattern : it tells less to start at the first occurrence of pattern in the file
-s : causes consecutive blank lines to be squeezed into a single blank line
Использование команды с параметрами:
dmesg | меньше -p "сбой"
Вышеупомянутая команда сообщает less начать работу при первом появлении шаблона «сбой» в файле.
Выход :
[368.748104] wlp2s0: не удалось удалить ключ (1, ff: ff: ff: ff: ff: ff) из оборудования (-22) [372.254014] wlp2s0: аутентифицироваться с помощью a0: 55: 4f: 27: bd: 01 [372.257112] wlp2s0: отправить аутентификацию на a0: 55: 4f: 27: bd: 01 (попробуйте 1/3) [372.261055] wlp2s0: аутентифицирован [372.264307] wlp2s0: связать с a0: 55: 4f: 27: bd: 01 (попробуйте 1/3) [372.270621] wlp2s0: RX AssocResp из a0: 55: 4f: 27: bd: 01 (capab = 0x431 status = 0 help = 199) [372.272312] wlp2s0: связанный [372.357068] wlp2s0: Ограничение мощности передачи до 30 (30-0) дБм, как заявлено a0: 55: 4f: 27: bd: 01 [682.255302] wlp2s0: отключено от a0: 55: 4f: 27: bd: 01 (Причина: 1 = НЕ УКАЗАНО) [682.304134] wlp2s0: не удалось удалить ключ (1, ff: ff: ff: ff: ff: ff) из оборудования (-22) [685.809837] wlp2s0: аутентифицироваться с помощью a0: 55: 4f: 27: bd: 01
dmesg | меньше -N
Он покажет вывод вместе с номерами строк
Выход :
1 [0.000000] микрокод: микрокод обновлен раньше до версии 0x21, дата = 20.11.2017 2 [0.000000] random: get_random_bytes вызывается из start_kernel + 0x42 / 0x504 с crng_init = 0 3 [0.000000] Linux версии 4.13.0-26-generic (buildd @ lgw01-amd64-031) (версия gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1 ~ 16.04.5)) # 2 3 9 ~ 16.04.2 -Ubuntu SMP Вт, 9 января, 22:00:44 UTC 2018 (Ubuntu 4.13.0-26.29 ~ 16.04.2-generic 4.13.13) 4 [0.000000] Командная строка: BOOT_IMAGE = / boot / vmlinuz-4.13.0-26-generic.efi.signed root = UUID = 993a37f2-7ea9-43a3-b652-5b26bb879797 ro qu 4 iet splash vt.handoff = 7 5 [0.000000] KERNEL поддерживает процессоры: 6 [0,000000] Intel GenuineIntel 7 [0.000000] AMD AuthenticAMD 8 [0.000000] Кентавр КентаврХаулс 9 [0.000000] x86 / fpu: поддержка функции XSAVE 0x001: 'регистры с плавающей запятой x87' 10 [0.000000] x86 / fpu: поддержка функции XSAVE 0x002: «регистры SSE» 11 [0.000000] x86 / fpu: Поддержка функции XSAVE 0x004: 'Регистры AVX' 12 [0,000000] x86 / fpu: xstate_offset [2]: 576, xstate_sizes [2]: 256
меньше -F имя файла например. меньше -F /home/mandeep/test/first.erl
Это не даст никакого вывода, так как файл может отображаться на одном экране.
меньше /home/mandeep/test/first.erl
Это содержимое проверенного выше файла, он может отображаться на одном экране.
-модуль (первый). -export ([fib / 1]). fib (X), когда X 1; fib (X), когда X> = 2 -> фиб (X - 1) + фиб (X - 2).
- Мандип Сингх
Использованная литература :
1) википедия
2) справочные страницы linux