Я хочу сделать резервную копию только моих музыкальных папок FLAC. Файлы FLAC могут быть вложены в папки следующим образом:
AlbumName/
├── Files/
│ ├── someSong01.flac
│ ├── someSong02.flac
├── Covers/
│ ├── someCover01.jpg
│ └── someCover02.jpg
Как скопировать и переместить все папки AlbumName с соответствующей структурой и содержимым, которые содержат где-то внутри хотя бы один файл FLAC (я предполагаю, что этого достаточно, чтобы сказать: музыка в формате FLAC)
РЕДАКТИРОВАТЬ: FLAC файлы могут быть вложенными; так что я могу иметь:
AlbumName2/
├── someSong01.flac
├── someSong02.flac
├── Covers/
│ ├── someCover01.jpg
| └── someCover02.jpg
И я хочу скопировать эти папки со всем их содержимым, а не только файлы FLAC, и вставить в другой каталог.
Так что, если у меня есть, а
AlbumName3/
├── someSong01.mp3
├── someSong02.mp3
├── Covers/
│ ├── someCover01.jpg
| └── someHiddenSong.flac
и
AlbumName4/
├── Files/
│ ├── someSong01.mp3
│ ├── someSong02.mp3
├── Covers/
│ ├── someCover01.jpg
│ └── someCover02.jpg
Я хочу рекурсивно cp в другой каталог AlbumName, AlbumName2 и AlbumName3, но не AlbumName4
РЕДАКТИРОВАТЬ: Ни один из ответов на самом деле не делал то, что я хочу, поэтому я в конечном итоге использовал что-то вроде этого:
find -mindepth 2 -name '*.flac' -exec dirname {} \; | awk -F "/" '{print $2}' | sort -u | while read -r dirname; do cp -r "$dirname" "backup/"; done
в основном я перечисляю все файлы flac, извлекаю корневую папку с помощью awk, удаляю дубликаты и делаю что хочу