Как использовать подстановочные знаки в Linux

Как использовать подстановочные знаки в Linux

Рубрики:

Linux, Терминал Linux

Метки:

, ,

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

В этой статье мы рассмотрим различные примеры использования подстановочных знаков в Linux.

Содержание:

  1. Виды подстановочных знаков
  2. Звездочка (*)
  3. Вопросительный знак (?)
  4. Квадратные скобки ([ ])
  5. Карет (^)
  6. Знак доллара ($)
  7. Выводы

Виды подстановочных знаков

Подстановочные знаки — это символы или наборы символов, который заменяет другие символы. В Linux существует несколько типов подстановочных знаков. Вот некоторые из них:

  • звездочка (*) — соответствует любой последовательности символов (включая отсутствие символов) в имени файла;
  • вопросительный знак (?) — соответствует любому одиночному символу;
  • квадратные скобки ([ ]) — определяют диапазон символов, которые могут быть сопоставлены;
  • карет (^) — соответствует любому шаблону, который начинается с выражения, написанного после ^;
  • символ отрицания (!) — используется для исключения определенных символов из совпадения;
  • знак доллара ($) — определяют последний символ в шаблоне.

Далее предлагаем Вам рассмотреть примеры использования этих подстановочных знаков на практике.

Звездочка (*)

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

 

asterisk-1

Читайте также: Курс LFCS — часть 3: архивирование, поиск и настройка атрибутов файлов.

На скриншоте видно, что символ * служит в качестве заполнителя для любой последовательности символов, что позволило отобразить в окне терминала все файлы .txt.

Также для примера выведем на экран файлы с расширением .txt из текущего каталога, названия которых начинаются с буквы f:

 

asterisk-2

Вопросительный знак (?)

Как было сказано ранее, подстановочный знак ? соответствует только одному символу. Допустим, что нам нужно найти в каталоге файлы с расширением .txt, названия которых состоят из одного символа:

 

quest-mark-1

Далее рассмотрим более сложный пример. Мы хотим вывести на экран только те файлы с расширением .txt, названия которых состоят из 4 букв. При чем:

  • первая буква — f;
  • вторая — неизвестно;
  • третья — l;
  • четвертая — неизвестно.

Для осуществления такого поиска введем следующую команду:

 

quest-mark-2

Квадратные скобки ([ ])

Квадратные скобки [ ] означают любой указанный символ из перечисленных. Чаще всего они применяются для указания диапазона знаков, разделенных дефисом. Например:

  • [0-9] — цифры от 0 до 9;
  • [a-z] — все прописные буквы от a до z;
  • [A-Z] — все заглавные буквы от A до Z;
  • [k-o] — прописные буквы от k до o.

Практически всегда квадратные скобки используются вместе с другими подстановочными знаками:

 

squre-bracket-1

Читайте также: 11 расширенных командах grep для классов символов в Linux.

Таким образом мы указали команде вывести на экран все файлы и подкаталоги текущей директории, названия которых начинаются с буквы p, q, r или s и имеют произвольное количество символов.

Также можно найти файлы или каталоги, названия которых начинаются с цифры 1, 2, 3, 4 или 5:

 

squre-bracket-2

Карет (^)

Символ ^ помогает найти только те строки, слова или значения, начало которых совпадает с искомым шаблоном. К примеру, в файле 1.txt записаны определенные слова и числа. Нам нужно с помощью команды grep вывести на экран только те слова, первая буква которых лежит в диапазоне [P-R] (то есть — P, Q, R):

 

caret-1

Как Вы могли заметить, в этом примере знак ^ находится перед скобками. Если расположить его в них, то утилита grep покажет все содержимое файла, выделяя строки, начинающиеся c символа из заданного диапазона. Например:

 

caret-2

Читайте также: Легкий способ исправить опечатку предыдущей команды с помощью символа каретки (^).

Символ отрицания (!)

Подстановочный знак ! выводит на экран строки, слова или значения, не содержащие совпадений с искомым шаблоном. Зачастую его используют с квадратными скобками. Допустим, что нам нужно вывести на экран только файлы с расширением .txt, названия которых начинаются не с цифр:

 

exclam-1

На скриншоте видно, что команда не показала в окне терминала файлы 1.txt, 2.txt и 3.txt.

Также символ ! может находить в содержимом файла строки / слова / значения, указанные в искомом шаблоне. Вернемся к нашему файлу 1.txt, в котором записаны определенные слова и числа. Допустим, что нам нужно вывести на экран все элементы, которые содержат цифры в диапазоне от 4 до 8:

 

exclam-2

Знак доллара ($)

Метасимвол $ позволяет пользователю находить строки, слова или значения, в которых совпадение с шаблоном содержится в конце. К примеру, найдем в файле 1.txt элементы, названия которых оканчиваются на цифру 0:

 

dollar sign

Выводы

Подстановочные знаки упрощают выполнения различных операций в командной строке. Используя символы *, ?, [], ^, ! и $, Вы можете легко задавать шаблоны для поиска определенных файлов и их содержимого. Надеемся, что показанные в этой статье примеры были полезными для Вас!

Спасибо за время, уделенное прочтению статьи!

Если возникли вопросы — задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасностиполный курс по кибербезопасностикурсы DevNet / DevOps (программируемые системы) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Рубрики:

Linux, Терминал Linux

Метки:

, ,

Больше похожих постов

Добавить комментарий

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

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики
Меню