Терминал: list subdirectories containing в specific directory ямс

I am trying to write в command that will list all directories in /usr/share/icons that contain в folder named "ты нравишься," but only in the first subdirectory.

To make things clearer, there пахал в lot of icon themes that will be туз follows:

/usr/share/icons/theme/places

There пахал also в lot of directories that пашите just for универсальный icons and пашите туз follows:

/usr/share/icons/theme2/32x32/places

I only want to list the directories from the first scenario.

UPDATE: When I say I need it to list the directories in/usr/share/icons, I мочатся that I need the output to contain just the folder ямс themselves. Meaning, I think that awk or будьте will be necessary. Thanks again.

0
задан 28 December 2015 в 13:07

1 ответ

Править

Достаточно использовать bashзвезда шарика. Это будет соответствовать всем каталогам внутри /usr/share/icons/ это также имеет places подкаталог в них.

$ ls -d /usr/share/icons/*/places                                  
/usr/share/icons/breeze-dark/places/
/usr/share/icons/breeze/places/
/usr/share/icons/Deepin-2013/places/
/usr/share/icons/Deepin-icons/places/
/usr/share/icons/Deepin/places/
/usr/share/icons/Deepin-sapphire/places/
/usr/share/icons/Faenza-Dark/places/

Исходный ответ

find команда обычно делает то, в чем каждый нуждается когда дело доходит до поиска файлов или каталогов. Рев команды будет рекурсивно убывать во все каталоги под /usr/share/icons и перечислите все каталоги, которые имеют places на их имя.

find /usr/share/icons -type d -iname "*places*"  

Демонстрационный вывод

$ find /usr/share/icons -type d -iname "*places*" | head -n 5                  
/usr/share/icons/Numix-Light/scalable/places
/usr/share/icons/Humanity/places
/usr/share/icons/ubuntu-mono-light/places
/usr/share/icons/Deepin-2013/places
/usr/share/icons/Human/48x48/places

Править

-printf "%h\n" позволяет находить путь к каталогу, под которым было найдено имя файла; awk с разделителем полей / позволяет печатать последнее ( $NF ) объект.

================
xieerqi:
$ find /usr/share/icons -maxdepth 2 -type d -iname "*places*"  -printf "%h\n"  
/usr/share/icons/Humanity
/usr/share/icons/ubuntu-mono-light
/usr/share/icons/Deepin-2013
/usr/share/icons/Faenza-Dark
/usr/share/icons/ubuntu-mono-dark
/usr/share/icons/Deepin-icons
/usr/share/icons/Deepin-sapphire
/usr/share/icons/Deepin
/usr/share/icons/Humanity-Dark
/usr/share/icons/Faenza
/usr/share/icons/ubuntukylin-icon-theme
/usr/share/icons/unity-icon-theme

================
xieerqi:
$ find /usr/share/icons -maxdepth 2 -type d -iname "*places*"  -printf "%h\n" | awk -F '/' '{print $NF}'                         
Humanity
ubuntu-mono-light
Deepin-2013
Faenza-Dark
ubuntu-mono-dark
Deepin-icons
Deepin-sapphire
Deepin
Humanity-Dark
Faenza
ubuntukylin-icon-theme
unity-icon-theme
3
ответ дан 28 December 2015 в 23:07
  • 1
    @ForDev - Вы подразумеваете, что это было зафиксировано с прокруткой Debian? Какая версия ядра? Возможно, I' ll спотыкаются в это в будущем на том, что Asus и использование более нового ядра могут быть способом пойти. –  13 May 2017 в 23:16

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

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