- Using more in linux
- Наши партнеры
- Using more in linux
- COMMANDS
- ENVIRONMENT
- Linux more Command Explained with Examples
- How to use linux more command
- 1) Limit lines per page
- 2) Display user message
- 3) Suppress scroll
- 4) Squeeze multiple blank lines
- 5) Search string
- 6) Display content start with specific line
- Can we use it to display binary file?
- Conclusion
Using more in linux
Наши партнеры
Библиотека сайта rus-linux.net
ИМЯ
more — Осуществляет поэкранный просмотр текста файла.
ОПИСАНИЕ
Этот фильтр позволяет осуществлять проверку текста, выведенного на один полный экран. После каждого заполнения экрана команда делает паузу и выводит на нижней строке экрана сообщение типа: (дальше). Если при этом пользователь нажимает клавишу Enter, то на экран будет выведена следующая строка текста. Если пользователь нажимает клавишу SPACE (пробел), будет выведен следующий полный экран. Другие возможности описаны ниже.
ОПЦИИ
-n | Целое число, используемое в качестве размера окна (в строках) вместо принятого для команды more по умолчанию. |
---|---|
-с | Команда more отображает в верхней части экрана каждую страницу с начала, стирая при этом предварительно выведенную там строку. Это исключает прокрутку экрана, облегчая чтение текста с помощью команды more. Эта опция игнорируется, если терминал не имеет возможности очищать строку до конца. |
-d | Команда more в конце каждого заполненного экрана высвечивает сообщение «Hit space to continue, Rubout to abort» («Нажмите пробел для продолжения, а Rubout — для прерывания»). Эта опция полезна, если команда more используется в качестве фильтра в некоторых системах, таких как класс, где многие пользователи могут быть неопытными. |
-f | Под действием этой опции команда more считает не экранные, а логические строки. То есть, длинные строки не заворачиваются. Рекомендуется использовать эту опцию, если вывод команды nroff подключается в конвейер через команду ul, которая может генерировать escape последовательности. Эти escape-последовательности содержат символы, которые обычно занимают экранные позиции, но не печатаются при выводе на терминал в качестве части escape-последовательности. Таким образом, команда more может решить, что строки длиннее, чем они есть на самом деле и ошибочно завернуть их. |
-l | Умышленно не обрабатывается команда Ctrl-L (form feed — переход на новую страницу). Если не задана эта опция, команда more останавливается после любой строки, содержащей Ctrl-L, до тех пор, пока экран не заполнится до конца. Также, если некоторый файл начинается со знака form feed, экран очищается прежде, чем распечатывается этот файл. |
-u | Обычно команда more осуществляет такое же подчеркивание, как при команде nroff, в том виде, который соответствует данному терминалу: если терминал может делать подчеркивание или имеет режим выделения, то выходные данные команды more соответствуют escape-последовательностям для разрешения подчеркивания или режима выделения для подчеркнутого текста в исходном файле. Опция -u подавляет такую обработку. |
-r | Обычно, команда more игнорирует управляющие символы, которые она не интерпретирует некоторым образом. Под действием опции -r эти символы отображаются как ^C, где стоит «С» для любого такого символа. |
-w | Обычно, команда more завершает работу при подходе к концу своих входных данных. А под действием опции -w, она запрашивает пользователя и ждет нажатия любой клавиши перед завершением работы. |
+linenumber | Команда more стартует со строки с номером linenumber (номер строки). |
+/pattern | Команда more начинает просмотр текста за две строки до той строки, в которой содержится регулярное выражение pattern (шаблон). |
Команда more просматривает файл /etc/termcap для определения характеристик терминала и для определения установленного по умолчанию размера окна. Для терминала, отображающего 24 строки, размер окна по умолчанию составляет 22 строки.
Команда more просматривает переменную среды MORE для предварительной установки любых желаемых флагов. Например, если вы предпочитаете просматривать файлы, используя режим работы -с, то команда «МORE=-с» интерпретатора shell в файле .profile обеспечивает все обращения к команде more для реализации этого режима.
Если команда more считывается из файла, а не из программного канала, вслед за приглашением «—MORE—» высвечивается процентное соотношение. Оно показывает, какая часть данного файла (в символах, а не в строках) уже прочитана.
Другие последовательности, которые могут быть введены в паузах команды more, а также их действия, приведены ниже (i — это необязательный целый аргумент, по умолчанию равен 1):
i | Отображает еще i строк (или другой полный экран, если не задан аргумент). Ctrl-D Отображает еще 11 строк («scroll» — прокрутка экрана). Если аргумент i задан, то размер прокручиваемых строк устанавливается равным i. |
---|---|
d | Тоже, что и под действием Ctrl-D. |
i z | Тоже, что и при вводе space (пробел), при этом i, если оно указано, становится новым размером окна. |
i s | Пропускает i строк и выводит полный экран строк. |
i f | Пропускает i полных экранов и выводит полный экран. |
q или Q | Выходит из команды more. |
= | Выводит номер текущей строки. |
v | Запускает экранный редактор vi на текущей строке. |
h или ? | Вспомогательная команда (help). Дает описание всех команд more. |
i/expr | Отыскивает i-ое появление регулярного выражения expr. Если выражение expr встретилось менее i раз, и входные данные представляют собой файл (а не программный канал), то позиция в файле остается без изменений. В противном случае, высвечивается полный экран, начиная на две строки выше того места, где было найдено регулярное выражение. Можно использовать пользовательские символы стирания и уничтожения для редактирования регулярного выражения. Стирание последней встретившейся первой колонки отменяет команду поиска. |
i n | Осуществляет поиск i-го появления последнего введенного регулярного выражения. |
‘ | (Одиночная кавычка) Возвращается к точке, с которой был начат последний поиск. Если в текущем файле поиск не проводился, эта команда возвращает вас к началу файла. |
!commmand | Подключает интерпретатор shell с командой command. Символы % и ! в «command» заменяются на текущее имя файла и предыдущую команду shell соответственно. Если текущее имя файла отсутствует, то знак % не раскрывается. Последовательности «\%» и «\!» заменяются на «%» и «!» соответственно. |
i:n | Переходит к следующему i-му файлу, заданному в командной строке (переходит к последнему файлу, если i не указано). |
i:p | Переходит к предыдущему i-му файлу, заданному в командной строке. Если эта команда задана в середине распечатывания файла, команда more возвращается к началу файла. Если i не задано, команда more переходит к первому файлу. Если команда more не считывается из файла, то звенит звонок и ничего больше не происходит. |
:f | Высвечивает текущее имя файла и номер строки. |
:q или :Q | Выходит из команды more (также как q или Q). |
. | Повторяет предыдущую команду. |
Команды начинают действовать немедленно. Нет необходимости нажимать клавишу возврата каретки. До того момента, когда задан сам командный символ, пользователь может ввести символ уничтожения строки для отмены сформированного численного аргумента. Кроме того, пользователь может ввести символ стирания для повторной высветки сообщения «—More—«.
Этой программой терминал устанавливается в режим noecho (неотображаемая передача), так что процесс вывода может быть непрерывным. За исключением команд (/) и (!), то, что вы вводите, не будет показано на терминале.
В качестве примера использования команды more можно привести следующий вывод длинного оглавления каталога командой ls -la:
РАЗРЕШЕНИЕ НА ИСПОЛЬЗОВАНИЕ
Эта утилита была разработана в Университете г.Беркли, шт.Калифорния и используется по разрешению.
Перед отображением файла команда more пытается определить, является ли файл двоичным, не подлежащим распечатыванию, таким как каталог или выполняемое, двоичное отображение. Если команда more заключает, что файл не подлежит распечатыванию, она запрещает его печатать. Однако, команда more не может распознать все возможные виды непечатаемых файлов.
Источник
Using more in linux
-num This option specifies an integer which is the screen size (in lines). -d more will prompt the user with the message «[Press space to continue, ‘q’ to quit.]» and will display «[Press ‘h’ for instructions.]» instead of ringing the bell when an illegal key is pressed. -l more usually treats ^L (form feed) as a special character, and will pause after any line that contains a form feed. The — l option will prevent this behavior. -f Causes more to count logical, rather than screen lines (i.e., long lines are not folded). -p Do not scroll. Instead, clear the whole screen and then display the text. -c Do not scroll. Instead, paint each screen from the top, clearing the remainder of each line as it is displayed. -s Squeeze multiple blank lines into one. -u Suppress underlining. +/ The +/ option specifies a string that will be searched for before each file is displayed. +num Start at line number num
COMMANDS
h or ? Help: display a summary of these commands. If you forget all the other commands, remember this one. SPACE Display next k lines of text. Defaults to current screen size. z Display next k lines of text. Defaults to current screen size. Argument becomes new default. RETURN Display next k lines of text. Defaults to 1. Argument becomes new default. d or ^D Scroll k lines. Default is current scroll size, initially 11. Argument becomes new default. q or Q or INTERRUPT Exit. s Skip forward k lines of text. Defaults to 1. f Skip forward k screenfuls of text. Defaults to 1. b or ^B Skip backwards k screenfuls of text. Defaults to 1. Only works with files, not pipes. Go to place where previous search started. = Display current line number. / pattern Search for kth occurrence of regular expression. Defaults to 1. n Search for kth occurrence of last r.e. Defaults to 1. ! or :! Execute in a subshell v Start up an editor at current line. The editor is taken from the environment variable VISUAL if defined, or EDITOR if VISUAL is not defined, or defaults to «vi» if neither VISUAL nor EDITOR is defined. ^L Redraw screen :n Go to kth next file. Defaults to 1. :p Go to kth previous file. Defaults to 1. :f Display current file name and line number . Repeat previous command
ENVIRONMENT
MORE This variable may be set with favored options to more SHELL Current shell in use (normally set by the shell at login time). TERM Specifies terminal type, used by more to get the terminal characteristics necessary to manipulate the screen.
Источник
Linux more Command Explained with Examples
If you are used to working with Linux, you will find a lot of file text in Linux world. Configuration files and log files are usually kept in text format. But those files usually has long content.
You can not view them all in one page. So we need pagination to those files. And to do that, we can use Linux more command.
More command is a command for displaying a long text file per page at a time. More command is a built-in command in Linux.
How to use linux more command
To use more command, we just need to type :
For example, we want to see the content of syslog file located in /var/log directory. We can type :
We see that an indicator on the bottom left. It shows us number 0%. It means that the file is long enough, so the first page is 0% of the total page. To scroll down, use space button. Then we see that the indicator number is increased.
1) Limit lines per page
When you run more command, it will fill your screen with the content of the file you are seeing using more. You can limit it into some lines for each page. To do this you can use -num option.
For example, you want to limit the lines only 12 lines for each page. Then you can type :
Now it will limit 12 lines per page. When you press spacebar to scroll down, it will show you more 12 lines.
2) Display user message
As we knew, more will display an indicator at the bottom left to show our position in percentage. For those who run more at the first time, he/she may guess how to scroll the page down. To avoid this, we can use -d option that will make more command display a user message like this “[Press space to continue, ‘q’ to quit.]” .
If user press a button other than button ‘space’ and ‘q’ , then more will display a warning message “[Press ‘h’ for instructions.]” .
If you press h button, it will display a help message :
One of the interesting command is the b button. b button allow you to go back to previous page. In other word, b button allow you to scroll up.
You can know that you are in the previous page from the line . backup 1 page at the top left area.
3) Suppress scroll
With -c option, more will not scroll the page. It will clear the previous page and put the next page or lines there.
If you press space button, the next page or lines is still at the same size.
4) Squeeze multiple blank lines
To squeeze it, we can use -s option. Here’s a sample :
When we add -s option :
5) Search string
If your log file is long enough, it’s not easy to find a string that you want. The search string can help you. Using +/string can search a string for you and put the keyword on the beginning of the line. Let say we want to search “dhclient” in /var/logs/syslog file. Then the syntax is :
Then to continue the search on the next line, you can press / button following by dhclient word.
6) Display content start with specific line
You can also display a content of file start with specific line using +num option. For example, we have a file with 15 lines inside it.
Then we want to display a file named doc_30.txt starting from the line number 5. The command will be like this :
Can we use it to display binary file?
The answer is No. More will give you a message about this. Here’s a sample.
Conclusion
More is one of the basic tool to display a content of text file. More cannot be used to display binary file. As usual, we can always type man more or more —help to explore more detail about the usage of more command.
Источник