Я пытаюсь найти команду, которая находит и копирует файлы с заданным именем в другую папку, но с немного другим путем.

Например, есть 4 копии файлов PNG с именем ic_arrow.png

app/src/main/res/drawable-xhdpi/ic_arrow.png
app/src/main/res/drawable-xxhdpi/ic_arrow.png
app/src/main/res/drawable-hdpi/ic_arrow.png
app/src/main/res/drawable-mdpi/ic_arrow.png

и я хотел бы скопировать это

feature/name1/src/main/res/drawable-xhdpi/ic_arrow.png
feature/name1/src/main/res/drawable-xxhdpi/ic_arrow.png
feature/name1/src/main/res/drawable-hdpi/ic_arrow.png
feature/name1/src/main/res/drawable-mdpi/ic_arrow.png

то есть правильная версия найденного файла с разрешением dpi копируется в правильную версию целевого каталога с разрешением dpi

Кто-нибудь знает, как я могу сделать это с помощью команды поиска или сценария и т. д.?

ТИА

1 ответ1

0

Rsync способ:

rsync -avh --include="*/" --include="*.png" --exclude="*" app/ feature/name1/

Тестирование это:

mkdir -p app/src/main/res/drawable-xhdpi/ app/src/main/res/drawable-xxhdpi/ app/src/main/res/drawable-hdpi/ app/src/main/res/drawable-mdpi/
touch app/src/main/res/drawable-xhdpi/ic_arrow.png app/src/main/res/drawable-xxhdpi/ic_arrow.png app/src/main/res/drawable-hdpi/ic_arrow.png app/src/main/res/drawable-mdpi/ic_arrow.png
mkdir -p feature/name1/src/main/res/drawable-xhdpi/ feature/name1/src/main/res/drawable-xxhdpi/ feature/name1/src/main/res/drawable-hdpi/ feature/name1/src/main/res/drawable-mdpi/

дерево приложение

app/
└── src
    └── main
        └── res
            ├── drawable-hdpi
            │   └── ic_arrow.png
            ├── drawable-mdpi
            │   └── ic_arrow.png
            ├── drawable-xhdpi
            │   └── ic_arrow.png
            └── drawable-xxhdpi
                └── ic_arrow.png

особенность дерева

feature/
└── name1
    └── src
        └── main
            └── res
                ├── drawable-hdpi
                ├── drawable-mdpi
                ├── drawable-xhdpi
                └── drawable-xxhdpi

команда rsync

rsync -avh --include="*/" --include="*.png" --exclude="*" app/ feature/name1/

Конечный результат (древовидная функция)

feature/
└── name1
    └── src
        └── main
            └── res
                ├── drawable-hdpi
                │   └── ic_arrow.png
                ├── drawable-mdpi
                │   └── ic_arrow.png
                ├── drawable-xhdpi
                │   └── ic_arrow.png
                └── drawable-xxhdpi
                    └── ic_arrow.png

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .