cygwin bash завершение, если вы знаете только конец имени файла - PullRequest
0 голосов
/ 07 мая 2020

Я не могу понять, как выполнить конкретный тип bash завершения работы - я использую GNU bash 4.4.12 (3) -release от cygwin.

Завершение, которое меня интересует in - это когда вы знаете конец имени файла, но не знаете его начало. Например, если имя файла - ABC1103.txt, и все, что вы помните, это то, что он заканчивается на '03 .txt ', вы должны иметь возможность ввести ...

    ls -l *03.txt<TAB>

... и получить это расширен до ...

    ls -l ABC1103.txt

, он работает до завершения при пустой подсказке bash. Например, если у меня есть каталог def1202 в моем текущем рабочем каталоге, я могу успешно заполнить имя каталога ...

    *1202<TAB>

.. становится ...

    def1202

.. Однако это НЕ работает для встроенных (например, echo) или внешних команд (например, / bin / echo). Например, все они не раскрываются ...

    % which echo
    echo is a shell builtin
    % echo *03.txt<TAB>
    % /bin/echo *03.txt<TAB>
    % strings *03.txt<TAB>

примечание: в / usr / share / bash -completion / completions нет файла завершения 'ls'. Но / usr / share / bash -completion / completions / strings действительно существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...