Что означает звездочка, обратный слеш, двоеточие и два в (*\:2)?

В чем смысл следования ls команда?

ls -l *\:2,*T
  • ls = список
  • -l = длинный (список)
  • *T вероятно означает T в конце

Но как насчет этого *\:2 а запятая?

3 ответа

Решение

*\:2,*T шаблон глобуса файлов для отображения Чтобы понять это, нам нужно запомнить несколько вещей:

  • : должен быть сброшен в оболочку, став \:
  • Имена файлов могут легко содержать запятые

Так *\:2,*T будет, например, соответствовать файлу с именем TranscationNumber:2,EventType:XYT

РЕДАКТИРОВАТЬ

Исходя из комментариев, необходимость (или нет) избежать : необходимо несколько слов: не обязательно избегать : знак, но сам bash предлагает это при автозаполнении.

Перечислите все файлы, которые соответствуют шаблону подстановочного знака *:2,*T

Там подстановочный знак * соответствует чему угодно (любое количество всех возможных символов)
:2, это символы, которые должны присутствовать в именах файлов / каталогов.
Толстая кишка : это специальный символ, который должен быть экранирован, следовательно, форма \:2,,
Имена файлов / каталогов должны заканчиваться T,

Имена файлов, которые будут соответствовать, будут

:2,T
a:2,T
a:2,bT
abbY-$fafaf:2,<hskjhsgdfhjk>T

Как отметили другие, это будет список в длинном формате, файлы, содержащие :2и заканчивая T

Это похоже на поиск в папке Maildir файлов, которые были удалены (удалены). Однако для надежности он должен был иметь другой * в конце концов. Могут быть добавлены новые флаги с более поздней алфавитной позицией, и Dovecot, например, добавляет другое поле с размером файла в конце.

Другие вопросы по тегам