Re: [LA-discussions] copier avec chemin complet

[ Thread Index | Date Index | More linuxarverne.org/discussions Archives ]


Salut

On Sat, Jun 07, 2008 at 10:09:57PM +0200, Daniel Cartron wrote:
> [SNIP]
> Dans amarok la liste (daniel.mu3) ressemble à ça :
> 
> #EXTM3U
> #EXTINF:199,La san girbazo
> ../../../../../Musique/Jukebox/Traditionnel/Centre France/Louis Sclavis - 
> André Ricros/le partage des eaux/01 - La san girbazo.ogg

Donc si je comprends bien, tu souhaite utiliser la playlist pour faire
la copie.

Tu peux donc utiliser grep(1) pour supprimer les lignes de commentaires
(option -v), et récupérer une liste de fichier, qui passée à xargs(1)
permettra de copier les fichiers comme il faut:

> grep -v "^#" < daniel.m3u | sed 's/^[.\/]*//' | xargs -I '{}' sh -c 'DD="/point/de/montage/$(dirname "{}")"; [ -d "$DD" ] || mkdir -p "$DD"; cp "{}" "$DD"'

sed(1) supprime les . et les / en début de nom de fichier (tu peux
supprimer plus de caractères si nécessaire naturellement, genre
's/^[.\/]*Musique\/Jukebox\///'.

Comme il faut créer les répertoires de destination s'ils n'existent
pas, xargs exécute un shell pour chaque fichier : sh(1).

On stocke le nom du répertoire de destination dans une variable
(DD=...), s'il n'existe pas (test(1) / [(1)) on le créé avec mkdir(1).
On copie ensuite le fichier dans le répertoire avec cp(1).



Une autre solution serait de trouver un utilitaire qui permette de
sélectionner un dossier source, un dossier cible, affiche les fichiers
et dossiers avec des cases à cocher pour signifier si les fichiers
doivent être copiés et permétant de faire une sélection avant de lancer
la copie des fichiers retenus.  Ça rapelle des choses à quelqu'un ?

@+
Ro

-- 
Romain Tartière <romain@xxxxxxxxxxxx>        http://romain.blogreen.org/
pgp: 8DAB A124 0DA4 7024 F82A  E748 D8E9 A33F FF56 FF43 (ID: 0xFF56FF43)
(plain text =non-HTML= PGP/GPG encrypted/signed e-mail much appreciated)

Attachment: pgpsOcw0ZKckE.pgp
Description: PGP signature



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/