Функция для нахождения имен файлов, содержащих строку

Я пытаюсь создать эту функцию, но я не нахожу правильный синтаксис:

function contains {
    find . -maxdepth 1 -i -name *$1*
}

Цель состоит в том, чтобы ввести contains xxx получить список файлов, содержащих xxx на их имена.

2
задан 23 November 2016 в 10:50

1 ответ

Хорошая функция :) Принятие Вас хочет i указать на поиск без учета регистра, один путь мог быть

contains() {
   find . -maxdepth 1 -iname "*$1*"
}

, Это очень важно для кавычки * при передаче find, (а также Ваш $1, конечно) для предотвращения его расширяемый оболочкой, которая заставит команду идти очень неправильно, если там будут соответствовать именам файлов в текущем каталоге.

4
ответ дан 2 December 2019 в 02:16

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

Похожие вопросы: