В этом уроке мы узнаем
Что такое труба в Linux?
Труба — это команда в Linux, которая позволяет использовать две или более команд, так что вывод одной команды служит вводом для следующей. Короче говоря, вывод каждого процесса напрямую как ввод к следующему, как конвейер. Символ ‘|’ обозначает трубу.
Каналы помогают вам смешивать две или более команд одновременно и выполнять их последовательно. Вы можете использовать мощные команды, которые могут выполнять сложные задачи в один миг.
Позвольте нам понять это на примере.
Когда вы используете команду «cat» для просмотра файла, который занимает несколько страниц, приглашение быстро переходит на последнюю страницу файла, и вы не видите его содержимое посередине.
Чтобы избежать этого, вы можете перенаправить вывод команды ‘cat’ на ‘less’, который покажет вам только одну длину прокрутки контента за раз.
cat filename | less
Иллюстрация прояснит это.
Нажмите здесь, если видео не доступно
команды ‘pg’ и ‘more’
Вместо «меньше», вы также можете использовать.
cat Filename | pg
или
cat Filename | more
И вы можете просмотреть файл в удобочитаемом виде и прокрутить вниз, просто нажав клавишу ввода.
Команда «grep»
Предположим, вы хотите найти определенную информацию по почтовому индексу из текстового файла.
Вы можете вручную просматривать содержимое, чтобы отслеживать информацию. Лучшим вариантом является использование команды grep. Он отсканирует документ на наличие необходимой информации и представит результат в нужном формате.
Синтаксис:
grep search_string
Давайте посмотрим на это в действии —
Здесь команда grep провела поиск файла «sample» на наличие строк «Apple» и «Eat».
Следующие параметры могут быть использованы с этой командой.
вариант | функция |
---|---|
-v | Показывает все строки, которые не соответствуют искомой строке |
-с | Отображает только количество совпадающих строк |
-n | Показывает совпадающую строку и ее номер |
-я | Соответствовать как (верхний, так и нижний) |
-l | Показывает только имя файла со строкой |
Давайте попробуем первый вариант ‘-i’ в том же файле, который использовался выше —
Используя опцию ‘i’, grep отфильтровал строку ‘a’ (без учета регистра) из всех строк.
Команда сортировки
Эта команда помогает отсортировать содержимое файла в алфавитном порядке.
Синтаксис этой команды:
sort Filename
Рассмотрим содержимое файла.
Использование команды сортировки
У этой команды также есть расширения , и они перечислены ниже.
вариант |
функция |
---|---|
-р |
Обратная сортировка |
-n |
Сортирует по численности |
-f |
Сортировка без учета регистра |
В приведенном ниже примере показана обратная сортировка содержимого в файле «abc».
Что такое фильтр?
В Linux много команд фильтрации, таких как awk, grep, sed, spell и wc. Фильтр принимает входные данные от одной команды, выполняет некоторую обработку и выдает выходные данные.
При передаче двух команд «отфильтрованный» вывод первой команды передается следующей.
Давайте разберемся с этим на примере.
У нас есть следующий файл «образец»
Мы хотим выделить только те строки, которые не содержат символ «а», но результат должен быть в обратном порядке.
Для этого можно использовать следующий синтаксис.
cat sample | grep -v a | sort - r
Давайте посмотрим на результат.
Резюме:
- Трубы ‘|’ отправить вывод одной команды как ввод другой команды.
- Фильтр принимает входные данные от одной команды, выполняет некоторую обработку и выдает выходные данные.
- Команда grep может использоваться для поиска строк и значений в текстовом документе.
- Пропускание через grep должно быть одним из наиболее распространенных применений
- Команда sort сортирует содержимое файла в алфавитном порядке
- less, команды pg и more используются для разделения длинного файла на читаемые биты