Страницы

Поиск по вопросам

пятница, 31 января 2020 г.

Как вывести файлы названием которых содержит меньше пяти символов скажем? unix

#ubuntu #unix


Как вывести файлы название которых содержит меньше пяти символов скажем?
    


Ответы

Ответ 1



find /your_path -type f -print| awk -F/ ' length($NF) < 5 '

Ответ 2



Утилита find умеет в регулярные выражения, и можно обойтись без вызова сторонних программ. find -regextype egrep -regex '.*/.{,5}' Первые три символа в шаблоне нужны из-за того, что -regex применяется ко всему пути, а мы хотим найти файлы, анализируя лишь их имя безотносительно местоположения. Кроме того, мы задали ключ -regextype, чтобы упростить наше регулярное выражение. Обратите внимание, в регулярке мы записали пятёрку, что означает нестрогое сравнение. То есть команда выше выведет имена файлов, в которых не более пяти символов. Чтобы обеспечить точное соответсвие условию в вопросе, нужно заменить 5 на 4. (Но это уже будет не так интересно).

Ответ 3



Пример с grep: find ~ -type f | grep -P '/.{5}$'

Комментариев нет:

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