Подстановка имен файлов
Globbing
bash может выполнять подстановку имен файлов, данный процесс называется globbing, при этом не используется стандартный набор регулярных выражений
При выполнении подстановки имен файлов, производится распознавание и интерпретация шаблонных символов
Применение шаблонных символов имеет ряд ограничений, например имена файлов которые начинаются с точки не будут соответствовать шаблону, содержащему символ *
Символ ? имеет другой смысл в подстановке файлов нежели в регулярных выражениях
#Пример_1
~/folder$ ls -l [f]*
-rw-rw-r-- 1 chich chich 0 июн 16 15:24 file1.txt
-rw-r--r-- 1 root chich 0 июн 16 15:26 file2.txt
-rw-rw-r-- 1 chich chich 0 окт 2 15:06 file3
-rw-rw-r-- 1 chich chich 0 окт 2 15:06 file4
-rw-rw-r-- 1 chich chich 0 окт 2 15:06 file5
-rw-rw-r-- 1 chich chich 0 окт 2 15:06 file6
#Пример2
~/folder$ ls file?
file3 file4 file5 file6
#Пример_3
~/folder$ ls [a-z]*
file1.txt file2.txt file3 file4 file5 file6 test.log
sub_folder:
sub_folder1:
#Пример_4
~/folder$ ls [^f]*
test.log
sub_folder:
sub_folder1:
#Пример_5 файлы которые начинаются с b или c или содержать est
ls -l {b*,c*,*est*}
#Показать файлы с любым окончанием, в том числе без префикса
ls file*
file file1 file2 file3 file4 filea fileb filec
#Показать файлы кроме 1-3
ls file[^1-3]
#В диапазоне с 1-3
ls file[1-3]
file1 file2 file3
#В диапазоне от a до b
ls file[a-b]
filea fileb
#1-2 и a-b
ls file[1-3a-b]
file1 file2 file3 filea fileb
Источники
Связанные темы
Использование команды tee в Linux
Использование wget и curl в Linux
Команда chattr и lsattr в Linux
Использование awk Linux Alpine
Блокировка пользователя в Linux
Проверка на необходимость перезапуска после обновления пакетов
Стандартные потоки и перенаправление ввода/вывода в Linux
Архивирование и сжатие файлов в Linux
Полезные команды и скрипты Linux
Условная конструкция if в Linux
Использование оператора select в языке shell
Внутренние и внешние команды linux
Использование конструкции case в Linux