Команда ls linux: как фильтровать файлы в других каталогах

Команда ls linux: как фильтровать файлы в других каталогах

Я знаю, что ls folder/и ls *abc*как делать в Linux. Я хочу отфильтровать некоторые файлы в определенной папке.

Я попробовал это, ls folder/ *abcно это не возвращает правильные значения.

Есть идеи?

Спасибо

решение1

Попробуйте воспользоваться поиском.

find folder/ -d 1 -name '*abc'

folder/: Путь к поиску

-d 1: Поиск только на один уровень ниже. Это предотвращает поиск во всех подкаталогах ниже папки, которую вы ищете. Удалите это, если хотите такое поведение.

-name '*abc': Шаблон для поиска.

Более подробную информацию можно получить с помощью man find.

решение2

Как уже говорилось ранее, findэто может быть лучшим вариантом, но чтобы сделать то, что вы хотите, используя ls, попробуйте отфильтровать с помощью grep:

user@host:/etc$ ls homeassistant | grep config
config
configuration.yaml
configuration_bak.yaml
dockerconfig
dockerconfig.bak

.. Так как это возвращает все файлы и папки, содержащие слово "конфигурация" из каталогапомощник по дому.

Связанный контент