- Просмотр содержимого файлов в командной строке Linux
- Команда cat
- Команда nl
- Команда less
- Команда more
- Команда head
- Команда tail
- Заключение
- Как открыть файл в терминале Linux
- Команды cat и tac
- Команды head и tail
- Команды more и less
- Команда most
- Текстовый редактор Nano
- ПРОСМОТР СОДЕРЖИМОГО ФАЙЛА В LINUX
- ПРОСМОТР ФАЙЛА В LINUX ПОЛНОСТЬЮ
- ПРОСМОТР ФАЙЛА В LINUX С ПРОКРУТКОЙ
- ПРОСМОТР ТОЛЬКО НАЧАЛА ИЛИ КОНЦА ФАЙЛА
- ПРОСМОТР СОДЕРЖИМОГО ФАЙЛА ПО ШАБЛОНУ
- ПРОСМОТР ФАЙЛОВ LINUX В СЖАТОМ ВИДЕ
Просмотр содержимого файлов в командной строке Linux
Рассмотрим несколько команд, которые используются для просмотра содержимого текстовых файлов в командной строке Linux.
Команда cat
Команда cat выводит содержимое файла, который передается ей в качестве аргумента.
Это самый простой и наиболее часто используемый способ для вывода содержимого текстовых файлов. Но выводить большие файлы через cat не всегда удобно.
Команда nl
Команда nl действует аналогично команде cat , но выводит еще и номера строк в столбце слева.
Команду nl удобно применять для просмотра программного кода или поиска строк в файлах конфигурации.
Команда less
Утилита less выводит содержимое файла, но отображает его только в рамках текущего окна в режиме просмотра.
Вы можете прокручивать текст файла клавишами стрелок или перелистывать страницы клавишами w и z .
Для поиска текста внутри файла нажмите / .
Для просмотра списка доступных горячих клавиш нажмите h
Чтобы выйти из режима просмотра используется клавиша q .
Очень удобно, что после выхода окно терминала остается чистым и не содержит текст файла.
Команда more
Команда more очень похожа на команду less . Она также выводит файл в терминале в режиме просмотра, но имеет некоторые отличия от команды less.
Например, less в конце файла выводит сообщение (END) (или EOF — End Of File) и ожидает нажатия клавиши q чтобы закрыть режим просмотра, а more по достижении конца файла сразу возвращает управление в терминал.
Также more после своей работы оставляет текст файла в терминале, а less работает «чисто» и не сохраняет текст в терминале.
Команда head
Команда head выводит на экран только первые 10 строк файла.
Используя опцию -n можно задать количество строк, которое нужно вывести. Например, чтобы вывести 15 строк используется команда:
Вместо -n можно просто использовать знак минус — , за которым сразу указывается количество строк.
Команда tail
Команда tail аналогична команде head , но выводит последние 10 строк файла.
Заключение
Команды, которые мы рассмотрели, имеют дополнительные возможности и области применения. Для получения справки по каждой команде можно воспользоваться Man-страницами.
Источник
Как открыть файл в терминале Linux
В Linux все настройки программ и самой операционной системы хранятся в текстовых документах. Также в текстовых документах сохраняются логи и другие необходимые данные. Поэтому при работе с Linux постоянно приходится просматривать и редактировать подобные текстовые и конфигурационные файлы.
В данной инструкции мы расскажем о том, как открыть файл в терминале Linux и какие команды для этого можно использовать. Материал будет актуален для любого дистрибутива Linux, включая Ubuntu, Debian, Kali Linux, CentOS и т.д.
Команды cat и tac
Если вам нужно открыть файл в терминале Linux, то для этого предусмотрено множество простых и эффективных способов. Пожалуй, самая часто используемая команда такого рода – это команда « cat ».
Чтобы использовать ее просто введите « cat » и название файла. Например, если вам нужно просмотреть содержимое файла « file_name.txt », то команда должна выглядеть вот так:
После выполнение данной команды все содержимое указанного файла будет выведено в терминал Linux. Данный способ вывода удобен для быстрого просмотра небольших файлов.
При использовании команды « cat » может понадобиться нумерация строк. В этом случае команду нужно вводить с параметром « -n ».
Также есть команда « tac », которая открывает файлы точно также как « cat », но выводит строки в обратном порядке (начиная с конца).
Обратите внимание , для того чтобы узнать больше о « cat » и « tac », а также других командах Linux, введите в терминал « man » (от англ. manual) и через пробел название интересующей вас команды, например, « man tac ». Это выведет подробную информацию о команде и список всех поддерживаемых параметров.
Команды head и tail
Если нужно открыть в терминале Linux большой файл, то вместо команды « cat » можно использовать « head » или « tail ». Данные команды выводят в терминал только часть файла. В случае « head » выводится только начало документа, а в случае « tail » только конец.
Чтобы открыть файл с помощью данной команды просто введите « head » или « tail » и название файла:
По умолчанию команды « head » и « tail » выводят по 10 строк с начала или конца файла. Но, при необходимости это значение можно изменить при помощи параметра « -n ». Для этого вводим « -n » и число строк (не отделяя пробелом). Выглядит это примерно так:
Кроме этого, вы можете ограничить количество информации, которую выводят команды « head » и « tail », указав значение в байтах. Для этого нужно использовать параметр « -c ». Например, чтобы вывести 100 байт нужно добавить параметр « -c » и указать значение 100 (не отделяя пробелом). Выглядит это примерно так:
Команды « head » и « tail » имеют общий набор параметров, но у « tail » есть уникальный параметр « -f », которого нет у « head ». При вызове « tail -f file_name.txt » выводимая информация будет автоматически обновляться. Это может быть удобно для наблюдения за логами.
Команды more и less
Для открытия больших файлов в терминале Linux можно использовать команды « more » и « less ». Команда « more » открывает файл в терминале Linux и позволяет пролистывать его только вниз при помощи клавиш Enter (одна строка вниз) и Space (страница вниз). Пролистывания вверх нет, поэтому, если вы случайно проскочили нужное вам место в файле, то вернуться назад не получится.
Чтобы открыть файл в терминале Linux с помощью команды « more » и « less » нужно ввести следующее:
Команда « less » также позволяет открывать большие файлы в терминале Linux, но она уже предоставляет больше возможностей. С помощью « less » можно пролистывать содержимое документа как вниз ( Page Down ), так и вверх ( Page Up ), переходить в конец ( End ) и начало файла ( Home ), пролистывать текст по одной строке ( Enter ), а также выполнять поиск в обоих направлениях.
Для того чтобы выполнить поиск после выполнения « less » нужно ввести слеш ( / ) и любой кусок текста. Чтобы перейти к следующему найденному отрывку нужно нажать N , а Shift-N возвращает к предыдущему найденному отрывку. Для поиска в обратном направлении вместо знака слеш ( / ) нужно вводить знак вопроса ( ? ) и после этого любой текст.
Учитывая большие возможности команды « less », для открытия файлов в терминале Linux в основном используют именно ее, а не команду « more ».
Команда most
Если возможностей « less » не хватает, то можно использовать команду « most ». Она предоставляет еще больше возможностей для открытия файлов в терминале Linux, но она может быть не установлена по умолчанию.
Если вы используете Ubuntu Linux , то для установки « most » нужно выполнить вот такую команду:
Команда « most » позволяет открывать сразу несколько файлов и переключаться между ними при необходимости. Также « most » позволяет редактировать текущий файл, переходить к нужной строке файла, разделять экран пополам, блокировать или пролистывать оба экрана одновременно и многое другое. По умолчанию, « most » не обертывает длинные строки, а использует горизонтальную прокрутку.
Для того чтобы открыть файл в терминале Linux с помощью « most » нужно выполнить вот такую команду:
Для перемещения по открытому файлу в «most» можно использовать стрелки на клавиатуре, Tab (вправо), Enter (вниз), T (начало), B (конец), J и G (переход к n-й строке), SPACE и D (один экран вниз), DELETE и U (один экран вверх). Для поиска вперед S , f или слеш , для поиска назад знак вопроса (?).
Текстовый редактор Nano
Если вам нужно не просто открыть файл в терминале Linux, но и отредактировать его, то лучше всего использовать не « most », а какой-нибудь более продвинутый текстовый редактор для терминала. Например, это может быть редактор Nano .
В Ubuntu Linux текстовый редактор Nano установлен по умолчанию, но если его нет в вашей системе, то вы можете его установить следующими командами:
Для CentOS, Fedora :
Для Debian, Ubuntu :
Чтобы открыть файл в терминале Linux при помощи редактора Nano нужно выполнить следующую команду:
Интерфейс программы Nano включает в себе верхнюю строку с информацией о редакторе и открытом файле, область редактирование с содержимым открытого файла, нижнюю панель с информацией о комбинациях клавиш.
Для управления текстовым редактором Nano используются следующие комбинации клавиш:
- Ctrl-G или F1 – просмотр справки;
- Ctrl-X или F2 – выход из программы;
- Ctrl-O или F3 – сохранение открытого файла;
- Ctrl-J или F4 – выровнять текущий абзац;
- Ctrl-R или F5 – загрузить содержимое другого файла в текущий;
- Ctrl-W или F6 – выполнить поиск;
- Ctrl-Y или F7 – пролистать страницу вперед;
- Ctrl-V или F8 – пролистать страницу назад;
- Ctrl-K или F9 – вырезать строку и запомнить;
- Ctrl-U или F10 – вставить;
- Ctrl-C или F11 – положение курсора;
- Ctrl-T или F12 – проверить орфографию;
Источник
ПРОСМОТР СОДЕРЖИМОГО ФАЙЛА В LINUX
В Linux все настройки, все логи, и почти вся информация хранится в обычных текстовых файлах. Важно уметь правильно и эффективно посмотреть содержимое файла linux с помощью терминала. Это еще одна из статей, ориентированных на новичков. Вот вы скажете, а что их там открывать, открыл и посмотрел, и все. Да, но не совсем, терминал Linux настолько гибкий инструмент, что даже обычный просмотр файлов можно очень сильно оптимизировать. Просмотр содержимого файлов Linux — это тоже искусство. В этой инструкции мы рассмотрим все команды, с помощью которых можно открыть текстовый файл linux, поговорим о том как ими пользоваться, а также приведем несколько примеров.
ПРОСМОТР ФАЙЛА В LINUX ПОЛНОСТЬЮ
Самая простая и в то же время наиболее часто используемая утилита для просмотра содержимого файла linux — cat. Выводит все содержимое файла в стандартный вывод. В параметре нужно передать только адрес файла, или нескольких файлов. Идеально подходит для просмотра небольших файлов. Общий синтаксис команды cat такой:
cat опции адрес_файла .
Например просмотр содержимого файла linux /etc/passwd:
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/bin/false
daemon:x:2:2:daemon:/sbin:/bin/false
adm:x:3:4:adm:/var/adm:/bin/false
lp:x:4:7:lp:/var/spool/lpd:/bin/false
sync:x:5:0:sync:/sbin:/bin/sync
Также можно посмотреть сразу несколько файлов:
Hello everybody
Hi world,
Опция -n включает нумерацию строк:
cat -n /var/log/Xorg.0.log
1 [ 85.675]
2 X.Org X Server 1.17.4
3 Release Date: 2015-10-28
4 [ 85.675] X Protocol Version 11, Revision 0
5 [ 85.675] Build Operating System: Linux 4.0.5-gentoo x86_64 Gentoo
6 [ 85.675] Current Operating System: Linux seriyyy95-pc 4.1.12-gentoo #2 SMP Tue Dec 29 14:50:59 EET 2015 x86_64
Для удобства, можно включить отображение в конце каждой строки символа $
hello everyone, how do you do?$
$
Hey, am fine.$
А также отображение табуляций, все табуляции будут заменены на символ ^I:
hello ^Ieveryone, how do you do?
Больше о ней говорить не будем, потому что большинство ее опций направлены на форматирование вывода, и вы сможете их легко изучить выполнив:
Есть еще одна очень похожая на cat утилита — tac. Принимает те же параметры и делает то же самое, только наоборот — выполняет вывод содержимого файла linux в обратном порядке — с конца:
ПРОСМОТР ФАЙЛА В LINUX С ПРОКРУТКОЙ
Если файл очень длинный и его содержимое не помещается на одном экране, cat использовать не очень удобно. для таких случаев есть less. Синтаксис тот же:
$ less опции файл
Также ее можно комбинировать с cat:
$ cat адрес_файла | less
Например, посмотрим лог Х сервера:
Теперь мы можем листать содержимое файла в Linux с помощью стрелок вверх-вниз. Для того чтобы выйти нажмите q. Также эта утилита поддерживает поиск. Для поиска по файлу нажмите слеш «/». О более правильном способе поиска мы поговорим дальше.
ПРОСМОТР ТОЛЬКО НАЧАЛА ИЛИ КОНЦА ФАЙЛА
Очень часто нам не нужен файл целиком. Например, достаточно посмотреть несколько последних строчек лога, чтобы понять суть ошибки, или нужно увидеть только начало конфигурационного файла. Для таких случаев тоже есть команды. Это head и tail (голова и хвост).
По умолчанию head открывает текстовый файл в Linux и показывает только десять первых строчек переданного в параметре файла:
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/bin/false
daemon:x:2:2:daemon:/sbin:/bin/false
adm:x:3:4:adm:/var/adm:/bin/false
lp:x:4:7:lp:/var/spool/lpd:/bin/false
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
news:x:9:13:news:/var/spool/news:/bin/false
uucp:x:10:14:uucp:/var/spool/uucp:/bin/false
Можно открыть сразу два текстовых файла в Linux одновременно:
head /etc/passwd /etc/shadow
Так можно открыть текстовый файл linux или несколько и вывести по десять первых строчек каждого из них.
Если вам не нужны все 10 строчек, опцией -n и цифрой можно указать количество строк которые нужно вывести. Например, 5:
head -n5 /var/log/emerge.log
1394924012: Started emerge on: Mar 15, 2014 22:53:31
1394924012: *** emerge —sync
1394924012: === sync
1394924012: >>> Synchronization of repository ‘gentoo’ located in ‘/usr/portage’.
1394924027: >>> Starting rsync with rsync://212.113.35.39/gentoo-portage
Тот же результат можно получить опустив букву n и просто передав цифру в качестве ключа:
head -5 /var/log/emerge.log
Также можно задать количество байт, которые нужно вывести с помощью опции -с и числа. Например: 45:
head -c45 /var/log/emerge.log
1394924012: Started emerge on: Mar 15, 2014 2
Тоже хотите подсчитать действительно ли там 45 символов? Используйте команду wc:
head -c45 /var/log/emerge.log | wc -c
Команда tail наоборот, выводит 10 последних строк из файла:
[ 141.977] (—) NVIDIA(GPU-0):
[ 141.977] (—) NVIDIA(GPU-0): DFP-1: disconnected
[ 141.977] (—) NVIDIA(GPU-0): DFP-1: Internal TMDS
[ 141.977] (—) NVIDIA(GPU-0): DFP-1: 165.0 MHz maximum pixel clock
[ 141.977] (—) NVIDIA(GPU-0):
Утилита tail тоже поддерживает изменение количества строк, с помощью опции -n. Но она обладает еще одной интересной и очень полезной опцией -f. Она позволяет постоянно обновлять содержимое файла и, таким образом, видеть все изменения сразу, а не постоянно закрывать и открывать файл. Очень удобно для просмотра логов linux в реальном времени:
tail -f /var/log/Xorg.0.log
ПРОСМОТР СОДЕРЖИМОГО ФАЙЛА ПО ШАБЛОНУ
В большинстве случаев нам нужен не полностью весь файл, а только несколько строк, с интересующей нас информацией. Можно выполнить просмотр файла linux предварительно отсеяв все лишнее с помощью grep. Сначала синтаксис:
$ grep опции шаблон файл
Или в комбинации с cat:
$ cat файл | grep опции шаблон
Например выведем из лога только предупреждения:
$ cat /var/log/Xorg.0.log | grep WW
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 85.839] (WW) Hotplugging is on, devices using drivers ‘kbd’, ‘mouse’ or ‘vmmouse’ will be disabled.
[ 85.839] (WW) Disabling Keyboard0
[ 85.839] (WW) Disabling Mouse0
[ 87.395] (WW) evdev: A4TECH USB Device: ignoring absolute axes.
Но это еще не все, многие не знают, но у этой утилиты еще несколько полезных опций.
С помощью опции -A можно вывести несколько строк после вхождения:
$ ifconfig | grep -A2 enp2s0
enp2s0: flags=4163 mtu 1500
inet 192.168.1.2 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::beae:c5ff:febe:8bb7 prefixlen 64 scopeid 0x20
С помощью -B — до вхождения:
ifconfig | grep -B2 loop
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 0 (Local Loopback)
А -С позволяет вывести нужное количество строк до и после вхождения шаблона:
ifconfig | grep -C2 loop
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 0 (Local Loopback)
RX packets 9810 bytes 579497 (565.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
Также с помощью grep можно подсчитать количество найденных строк:
ifconfig | grep –c inet6
Шаблоном может быть строка и простые спецсимволы замены. Если вы хотите использовать регулярное выражение укажите опцию -e или используйте egrep. Многие спрашивают, а какая разница между этими утилитами — уже никакой, в большинстве дистрибутивов egrep это ссылка на grep -e. А теперь пример:
ifconfig | egrep ‘UP|DOWN’
enp2s0: flags=4163 mtu 1500
ham0: flags=4163 mtu 1404
lo: flags=73 mtu 65536
sit0: flags=193 mtu 1480
ПРОСМОТР ФАЙЛОВ LINUX В СЖАТОМ ВИДЕ
Иногда можно встретить в системе текстовые файлы в сжатом виде, формате gz. Это, например, конфигурационный файл ядра, или логи некоторых программ. Для того чтобы открыть файл в linux через терминал не распаковывая его есть целый ряд аналогов вышеописанных утилит с приставкой z. Это zcat, zless, zgerp, zegrep.
Например, открываем сжатый файл для просмотра:
Или более практичный пример, распаковываем и копируем конфигурационный ядра в текущую директорию:
zcat /porc/cofig.gz .config
Так же можно использовать less, для просмотра сжатых файлов с прокруткой:
А для фильтрации сжатых файлов по шаблону есть zgrep и zegrep. Например, ищем в сжатом логе ошибки:
Источник