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