Я сподівався:
cp -R src/prog.js images/icon.jpg /tmp/package
отримав би симетричну структуру в режимі призначення:
/tmp
|
+-- package
|
+-- src
| |
| +-- prog.js
|
+-- images
|
+-- icon.jpg
але натомість обидва файли копіюються в / tmp / package. Плоска копія. (Це на OSX).
Чи є проста функція bash, яку я можу використовувати, щоб скопіювати всі файли, включаючи файли, визначені символом wildcard (наприклад, src / *. Js), на належне місце в каталозі призначення. Трохи на кшталт "для кожного файлу, запустіть mkdir -p $(dirname "$file"); cp "$file" $(dirname "$file")", але, можливо, одна команда.
Це відповідна нитка, яка дозволяє припустити, що це неможливо. Авторське рішення не дуже корисне для мене, тому що я хотів би просто надати список файлів, підстановку чи ні, і всі вони скопійовані до місця призначення. IIRC MS-DOS xcopy робить це, але, схоже, немає еквівалента для cp.