Рейтинг:0

Команда дерева странно не работает с некоторыми шаблонами

флаг cn

У меня есть следующий каталог:

¯ дерево -p
.
âââ [drwxr-xr-x] директор
    âââ [-rw-r--r--] a.ml
    âââ [-rw-r--r--] а.о.
    âââ [-rw-r--r--] b.ml
    âââ [-rw-r--r--] б.о

Если я попытаюсь отфильтровать дерево, ничего не найду:

¯ дерево -p -P *.ml
zsh: совпадений не найдено: *.ml
¯ дерево -p -P *ml
zsh: совпадений не найдено: *ml

И если я войду в каталог директор:

¯ дерево -p -P *.ml
b.ml [ошибка открытия каталога]

0 каталогов, 0 файлов
¯ дерево -p -P *ml
b.ml [ошибка открытия каталога]

0 каталогов, 0 файлов

Я не вижу здесь чего-то очевидного? Почему это не удается и как я могу это исправить?

pLumo avatar
флаг in
Я предполагаю, что ваша оболочка пытается интерпретировать `*.ml`, см. сообщение об ошибке, это не `дерево`, которое жалуется. Поместите шаблон в кавычки, и он должен работать нормально.
Lhooq avatar
флаг cn
Ой! Спасибо! Моя проблема заключалась в «ошибке открытия каталога», которую я получил первой, и это ошибка дерева, если я не ошибаюсь. Но да, кавычки работают отлично.
Рейтинг:4
флаг in

Вам нужно указать свой шаблон в кавычках, иначе он будет интерпретирован оболочкой вместо дерево.

Это должно работать нормально:

дерево -p -P '*.ml'

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

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.