Элегантный способ копирования списка каталогов в целевой каталог
Фон: я начал использовать beets
для управления моей музыкальной коллекцией. Он использует командную строку в качестве основного интерфейса. Команда beet ls -ap
например, выдает список путей (папок), которые соответствуют заданному критерию (например, added:2016-01
= добавлено в библиотеку в январе'16).
Я построил следующую довольно сложную командную строку для копирования последних добавлений моей библиотеки в целевой каталог (например, USB-флешка):
beet ls -ap added:2016-01 | xargs -I{} cp -R {} /target/directory/
Мой вопрос: это -I
необходимость возиться с опцией или я упускаю более простой способ выполнить ту же задачу? Моя партия фу, к сожалению, слабая...
1 ответ
Решение
С помощью -t
beet ls -ap added:2016-01 | xargs cp -R -t /target/directory
От man cp
-t, --target-directory=DIRECTORY
copy all SOURCE arguments into DIRECTORY