Estaba esperando:
cp -R src/prog.js images/icon.jpg /tmp/package
produciría una estructura simétrica en el directorio de destino:
/tmp
|
+-- package
|
+-- src
| |
| +-- prog.js
|
+-- images
|
+-- icon.jpg
pero, en cambio, ambos archivos se copian en / tmp / package. Una copia plana. (Esto está en OSX).
¿Existe una función bash simple que pueda usar para copiar todos los archivos, incluidos los archivos especificados con comodines (por ejemplo, src / *. Js) en el lugar que les corresponde dentro del directorio de destino? Un poco como "para cada archivo, ejecutemkdir -p $(dirname "$file"); cp "$file" $(dirname "$file")
", pero quizás un solo comando.
Este es un hilo relevante, lo que sugiere que no es posible. Sin embargo, la solución del autor no es tan útil para mí, porque me gustaría simplemente proporcionar una lista de archivos, comodines o no, y copiarlos todos en el directorio de destino. IIRC MS-DOS xcopy hace esto, pero parece que no hay equivalente para cp.