Ubuntu зависает при загрузке

Чтобы найти все пути к каталогам от текущего каталога вниз, которые содержат определенную строкуtpcc:

find. -type d -path '*tpcc*'

Предикат -pathбудет сопоставлять шаблон с именами путей, с которыми встречается find, и, если он соответствует шаблону, будет напечатан текущий путь.

Если вы не хотите чтобы шаблон совпадал в конце текущего имени пути, вместо этого используйте *tpcc*/*в качестве шаблона. Сопоставление /где-то после tpccприведет к тому, что findнайдет каталоги строго ниже любого каталога, имя которого содержит tpcc.

-type dограничивает поиск только каталогами.

Хотели бы вы обернуть это в простую в использовании функцию оболочки:

pathfind () {
    case $# in
        1)  # only a string was given
            searchpath=.
            searchstring=$1
            ;;
        2)  # search path and string was given
            searchpath=$1
            searchstring=$2
            ;;
        *)  # anything else is an error
            echo 'Expected one or two arguments' >&2
            return 1
    esac

    find "$searchpath" -type d -path "*$searchstring*"
}

Вы можете использовать это как

pathfind tpcc

или как

pathfind /some/path tpcc

или

pathfind /some/path 'tpcc*/'
0
23.04.2021, 22:03
0 ответов

Теги

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