
Я знаю, что 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
.. Так как это возвращает все файлы и папки, содержащие слово "конфигурация" из каталогапомощник по дому.