Подстановочные знаки позволяют пользователям легко выполнять различные операции с файлами в командной строке. Они помогают при создании шаблонов для поиска, копирования, перемещения или удаления файлов и каталогов.
В этой статье мы рассмотрим различные примеры использования подстановочных знаков в Linux.
Содержание:
- Виды подстановочных знаков
- Звездочка (*)
- Вопросительный знак (?)
- Квадратные скобки ([ ])
- Карет (^)
- Знак доллара ($)
- Выводы
Виды подстановочных знаков
Подстановочные знаки — это символы или наборы символов, который заменяет другие символы. В Linux существует несколько типов подстановочных знаков. Вот некоторые из них:
- звездочка (
*
) — соответствует любой последовательности символов (включая отсутствие символов) в имени файла; - вопросительный знак (
?
) — соответствует любому одиночному символу; - квадратные скобки (
[ ]
) — определяют диапазон символов, которые могут быть сопоставлены; - карет (
^
) — соответствует любому шаблону, который начинается с выражения, написанного после^
; - символ отрицания (
!
) — используется для исключения определенных символов из совпадения; - знак доллара (
$
) — определяют последний символ в шаблоне.
Далее предлагаем Вам рассмотреть примеры использования этих подстановочных знаков на практике.
Звездочка (*)
Этот подстановочный знак зачастую применяется, если у пользователя мало информации для поиска. К примеру, у нас в каталоге есть несколько файлов с расширением .txt
и нам нужно вывести на экран только их:
Читайте также: Курс LFCS — часть 3: архивирование, поиск и настройка атрибутов файлов.
На скриншоте видно, что символ *
служит в качестве заполнителя для любой последовательности символов, что позволило отобразить в окне терминала все файлы .txt
.
Также для примера выведем на экран файлы с расширением .txt
из текущего каталога, названия которых начинаются с буквы f
:
Вопросительный знак (?)
Как было сказано ранее, подстановочный знак ?
соответствует только одному символу. Допустим, что нам нужно найти в каталоге файлы с расширением .txt
, названия которых состоят из одного символа:
Далее рассмотрим более сложный пример. Мы хотим вывести на экран только те файлы с расширением .txt
, названия которых состоят из 4 букв. При чем:
- первая буква — f;
- вторая — неизвестно;
- третья — l;
- четвертая — неизвестно.
Для осуществления такого поиска введем следующую команду:
Квадратные скобки ([ ])
Квадратные скобки [ ]
означают любой указанный символ из перечисленных. Чаще всего они применяются для указания диапазона знаков, разделенных дефисом. Например:
[0-9]
— цифры от 0 до 9;[a-z]
— все прописные буквы от a до z;[A-Z]
— все заглавные буквы от A до Z;[k-o]
— прописные буквы от k до o.
Практически всегда квадратные скобки используются вместе с другими подстановочными знаками:
Читайте также: 11 расширенных командах grep для классов символов в Linux.
Таким образом мы указали команде вывести на экран все файлы и подкаталоги текущей директории, названия которых начинаются с буквы p, q, r или s и имеют произвольное количество символов.
Также можно найти файлы или каталоги, названия которых начинаются с цифры 1, 2, 3, 4 или 5:
Карет (^)
Символ ^
помогает найти только те строки, слова или значения, начало которых совпадает с искомым шаблоном. К примеру, в файле 1.txt
записаны определенные слова и числа. Нам нужно с помощью команды grep
вывести на экран только те слова, первая буква которых лежит в диапазоне [P-R]
(то есть — P, Q, R):
Как Вы могли заметить, в этом примере знак ^
находится перед скобками. Если расположить его в них, то утилита grep
покажет все содержимое файла, выделяя строки, начинающиеся c символа из заданного диапазона. Например:
Читайте также: Легкий способ исправить опечатку предыдущей команды с помощью символа каретки (^).
Символ отрицания (!)
Подстановочный знак !
выводит на экран строки, слова или значения, не содержащие совпадений с искомым шаблоном. Зачастую его используют с квадратными скобками. Допустим, что нам нужно вывести на экран только файлы с расширением .txt
, названия которых начинаются не с цифр:
На скриншоте видно, что команда не показала в окне терминала файлы 1.txt
, 2.txt
и 3.txt
.
Также символ !
может находить в содержимом файла строки / слова / значения, указанные в искомом шаблоне. Вернемся к нашему файлу 1.txt
, в котором записаны определенные слова и числа. Допустим, что нам нужно вывести на экран все элементы, которые содержат цифры в диапазоне от 4 до 8:
Знак доллара ($)
Метасимвол $
позволяет пользователю находить строки, слова или значения, в которых совпадение с шаблоном содержится в конце. К примеру, найдем в файле 1.txt
элементы, названия которых оканчиваются на цифру 0:
Выводы
Подстановочные знаки упрощают выполнения различных операций в командной строке. Используя символы *
, ?
, []
, ^
, !
и $
, Вы можете легко задавать шаблоны для поиска определенных файлов и их содержимого. Надеемся, что показанные в этой статье примеры были полезными для Вас!
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.