Поиск строк или шаблонов в простом тексте с терминала

о поиске струн или паттернов

В следующей статье мы увидим некоторые инструменты командной строки, используемые для поиска совпадающих строк или шаблонов в текстовых файлах. Эти инструменты обычно используются вместе с регулярными выражениями, сокращенно РЕГЭКС, которые представляют собой уникальные строки, описывающие шаблон поиска.

Регулярные выражения - это шаблоны, используемые для поиска определенной комбинации символов в текстовой строке. Регулярные выражения обеспечивают очень гибкий способ поиска или распознавания текстовых строк.. Хотя в следующих строках мы не увидим регулярных выражений, мы будем использовать шаблоны или строки.

Поиск строк или паттернов с терминала

Команда grep

Grep - это аббревиатура от Печать глобального регулярного выражения. Это мощный инструмент командной строки, который полезен при поиске определенной строки или шаблона в файле. С помощью grep мы сможем использовать широкий спектр функций, например, те, которые коллега объяснил нам в этом блоге некоторое время назад.

Синтаксис использования команды grep довольно прост:

grep PATRON [RUTA AL ARCHIVO]

Например, чтобы найти строку 'Ubuntu'в файле, который в этом примере мы будем называть text.txt, не принимая во внимание различие между верхним и нижним регистром, в терминале (Ctrl + Alt + T) нам нужно будет только выполнить команду:

grep -i текст

grep -i Ubuntu texto.txt

Команда sed

Жажда - это сокращение от Редактор потока. Это еще один полезный инструмент для терминала, с помощью которого мы можем управлять текстом в файле. Sed ищет, фильтрует и заменяет строки в заданном файле.

Команда sed по умолчанию выводит результат в стандартный вывод (Стандартный вывод). Это означает, что результат выполнения выводится на терминал, а не сохраняется в файл.

Команду Sed можно использовать следующим образом:

sed -OPCIONES COMANDO [RUTA AL ARCHIVO]

Например, чтобы заменить все вхождения 'Linux'в тексте'ГнуЛинукс', используйте следующую команду:

Команда sed

sed 's/Linux/GnuLinux/g' texto.txt

Если мы ищем перенаправить вывод в файл вместо его вывода на терминал, мы собираемся использовать знак перенаправления следующим образом:

sed 's/Linux/GnuLinux/g' texto.txt > salida.txt

Вывод команды сохраняется в файле output.txt вместо того, чтобы печататься на экране.

вывод команды sed

Чтобы увидеть больше вариантов, вы можете обратитесь к страницам руководства:

человек жаждет

man sed

Ack

Ack - это быстрый инструмент командной строки, написанный на Perl. Считается дружественной заменой утилите grep., который также дает визуально привлекательные результаты.

к установить подтверждение в нашей системе нам нужно будет выполнить в терминале (Ctrl + Alt + T):

установить подтверждение

sudo apt install ack

Команда Ack ищет в файле или каталоге строки, которые соответствуют критериям поиска.. Затем выделите соответствующую строку. Этот инструмент имеет возможность различать файлы по их расширениям.

Синтаксис команды Ack будет примерно таким:

ack [OPCIONES] PATRÓN [RUTA AL ARCHIVO]

Например, для поиска термина Linux в файле нам нужно будет выполнить:

команда ack search

ack Linux texto.txt

Инструмент поиска довольно умный и если пользователь не предоставляет никаких файлов или каталогов, он ищет в текущем каталоге и подкаталогах шаблон поиска..

В следующем примере файл или каталог не указаны. Ack автоматически обнаруживает доступный файл в каталоге и ищет соответствующий шаблон:

подтверждение поиска без файла

ack Linux

Рипгреп

Рипгреп кроссплатформенная утилита для поиска шаблонов регулярных выражений. Это быстрее, чем все упомянутые выше инструменты поиска, и он рекурсивно ищет в каталогах совпадающие шаблоны. Он также позволяет искать файлы определенных типов. По умолчанию ripgrep пропускает двоичные файлы и скрытые файлы / каталоги.

к установить ripgrep в системе все, что вам нужно сделать, это запустить следующую команду в терминале (Ctrl + Alt + T):

установка ripgrep

sudo apt install ripgrep

Синтаксис использования ripgrep довольно прост:

rg [OPCIONES] PATRÓN [RUTA AL ARCHIVO]

Если бы мы хотели найти цепочку 'Linux'в файлах, расположенных в текущем каталоге, нам нужно будет только выполнить команду:

человек рг линукс

rg Linux

Чтобы увидеть больше вариантов, пользователи могут использовать страницы руководства:

мужчина rg

man rg

Серебряный искатель

к установить этот инструментВ Ubuntu нам нужно будет только открыть терминал (Ctrl + Alt + T) и написать команду:

установка silversearcher-ag

sudo apt install silversearcher-ag

Silver Searcher - это кроссплатформенный инструмент поиска с открытым исходным кодом, похожий на ack, но с упором на скорость.. Это позволяет легко найти определенную строку в файлах в кратчайшие сроки. Используемый синтаксис:

ag OPCIONES PATRÓN_DE_BÚSQUEDA /ruta/al/archivo

Например, для поиска "Linux'в файле text.txt, нам нужно было бы написать в терминале (Ctrl + Alt + T):

поиск с помощью silversearcher

ag Linux texto.txt

Чтобы увидеть больше вариантов, мы можем обратиться к страницы руководства:

мужчина серебряный лучник

man ag

Это лишь некоторые из наиболее часто используемых инструментов командной строки для поиска, фильтрации и управления текстом в Linux.


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.