Eu estava esperando:
cp -R src/prog.js images/icon.jpg /tmp/package
resultaria em uma estrutura simétrica no dir de destino:
/tmp
|
+-- package
|
+-- src
| |
| +-- prog.js
|
+-- images
|
+-- icon.jpg
mas em vez disso, ambos os arquivos são copiados em / tmp / package. Uma cópia plana. (Isso está no OSX).
Existe uma função bash simples que posso usar para copiar todos os arquivos, incluindo arquivos especificados por curinga (por exemplo, src / *. Js) em seu devido lugar no diretório de destino. Um pouco como "para cada arquivo, execute mkdir -p $(dirname "$file"); cp "$file" $(dirname "$file")
", mas talvez um único comando.
Este é um tópico relevante, o que sugere que não é possível. A solução do autor não é tão útil para mim, porque eu gostaria simplesmente de fornecer uma lista de arquivos, curinga ou não, e ter todos eles copiados para o diretório de destino. IIRC MS-DOS xcopy faz isso, mas parece não haver equivalente para cp.