Copia recursiva y en orden

Imagen de juanmi

Forums: 

Hola a todos, llevo unos dias dandole vueltas a como puedo hacer una copia recursiva de una carpeta, pero hacer la copia en orden alfabético.

La copia debe ser recursiva.

El problema lo tengo que al copiar mi música a una taje SD me la copia seugn el orden que tiene el sistema de ficheros EXT3 y luego al esucharla en mi reproductor no lo hago en el orden adecuado.

Debe ser recursiva, es decir que tendre una estructura así:

carpeta_musica_coche
|
|
|___ Queen - CD 1
| |
| |
| |__pista_1.mp3
| |
| |__pista_2.mp3
| |
| |__pista_3.mp3
| |
| |__pista_4.mp3
|
|___ Queen - CD 2
| |
| |
| |__pista_1.mp3
| |
| |__pista_2.mp3
| |
| |__pista_3.mp3
| |
| |__pista_4.mp3

Y quiero hacer algo así:

cp -r /carpeta_musica_coche/* /carpeta_destino/

y que lo haga en orden alfabético.

Mil gracias a todos y a ver si me dais alguna pista ;-)

Ya lo he resuleto

Imagen de juanmi

Chicos ahí os dejo la solución, ya lo he resuelto.

Mil gracias de todos modos ;-)

Desde el direcorio donde tengo la múscia que quiero pasarle a la tarjeta SD, sino me crea la ruta mal en el destino

for file in `find *| sort -n | sed 's% %ç%g'`; do echo "${file//ç/ }"; cp --parents "${file//ç/ }" /media/disk/ ;done

Lo que hace es buscar las rutas de los archivos, ya ordenadas con sort y sustituidos los espacios con la c cedilla para que no me falle el paso de parametros. Una vez hecho hago un echo y el cp directamente al directorio, como curiosidad el echo y el cp vuelven a sustituis el caracter c cedilla por espacio para que la ruta sea fidedigna.

Saludos.

Juanmi.

Podrías usar: user@linuxbox$

Podrías usar:

user@linuxbox$ for file in `find *| sort -n | sed 's% %?%g'`; do echo "${file//?/ }"; cp --parents "${file//?/ }" /carpeta_destino/ ;done

Y también puedes reemplazar

`find *| sort -n | sed 's% %?%g'`

por

$(find *| sort -n | sed 's% %?%g')

~JohnQUnknown

while (alive)
do
breathe()
smile()
done

no tengo compu a mano

Imagen de iknaxio

No tengo compu a mano, pero se me ocurre que primero puedes generar un listado ordenado y luego se lo pasas a cp o haces un ciclo for.

Salu2

"Transporta un puñado de tierra todos los días y construirás una montaña" - Confucio
floss.iknaxio.net