Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 03-12-2015 13:16:43

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

[Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Bonjour à tous, ma question est dans le titre. Pour sauvegarder/réutiliser les tags, j'utilise le greffon "export metadata" du lecteur Quodlibet. C'est très bien, mais:

1°) Il faut nommer à la main chaque fichier de tags, j'aimerais qu'il lui attribue automatiquement le nom de l'album

2°) J'aimerais bien automatiser la chose pour toute une discothèque.

Je suis donc tombée sur le sujet de Hunter, ici: https://debian-facile.org/viewtopic.php?id=12458

Solution proposée, la commande

for f in "*.flac" ; do metaflac --export-tag-to="$f.txt" ; done



Seulement,elle pose deux petits problèmes:

1°) Il faut se placer dans le répertoire contenant les fichier *.flac. Comment faire pour que la commande concerne tous les sous-dossiers d'un répertoire?

2°) Même dans ces conditions, voilà le résultat de la commande:

metaflac: unrecognized option `--export-tag-to=*.flac.txt'
ERROR: you must specify at least one FLAC file;
       metaflac cannot be used as a pipe



Voilà, donc s'il faut sélectionner un par un chaque fichier, la manip' perd très nettement de son intérêt. Auriez-vous des idées?

Merci smile

Edit - smolski
Mise en conformité avec les balises du forum
Voir le tuto : Le code, ça pique moins les yeux en couleur
Aboulez le point choco df ! big_smile

@Philippine tu peux voir l'écriture de ces balises en ouvrant ton post par Modifier en bas à droite (nul n'est parfait...).

Dernière modification par Philippine (12-04-2016 12:11:05)

Hors ligne

#2 03-12-2015 15:14:32

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(G)UI : Gnome
Inscription : 09-05-2013
Site Web

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Bonjour,

Déjà la commande ne fonctionne que sur les fichiers au format .flac, donc pas tes .ogg ou autre.

Ensuite pour appliquer la commande à tous les fichiers d'un répertoire et de ses sous-répertoires, tu peux utiliser un truc comme cela :

for f in $(find . -type f -iname *.flac) ; do metaflac --export-tag-to=$f_tag.txt $f ; done



Tu auras autant de fichiers de tags que de fichiers .flac.

Après tu peux concaténer tout ça au besoin avec la commande cat :

cat *_tag.txt > tous_mes_tags.txt


Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#3 03-12-2015 15:49:01

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Merci Sogal! Je viens d'essayer, avec le même message d'erreur.

J'ai donc fait

metaflac --help

pour trouver que la commande est du type

 metaflac [fichier FLAC] --option.



Donc la commande que tu m'as donnée pose problème, parce que metaflac ne sait pas quels fichiers il doit traiter, on dirait bien?

Petit test pour voir comment ça fonctionne:

cd /home/philippine/musique/undossierauchoix


/home/philippine/musique/undossierauchoix$

metaflac *.flac --export-tags-to=tags.txt



Là ça marche, j'ai bien un fichier tags.txt, mais uniquement pour le dernier fichier flac du répertoire (on avance...). Mais comment indiquer à metaflac que je veux tous les fichiers flac de tous les sous-dossiers, sans qu'il ne m'envoie paître?

Edit - smolski
Mise en conformité des balises commande user.
Ça avance Philippine, merci. smile

Dernière modification par Philippine (03-12-2015 15:54:28)

Hors ligne

#4 03-12-2015 16:04:27

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
Inscription : 21-10-2008

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Philippine, tu utilises toute la commande proposée ou seulement le petit bout que tu indiques ?
Il manque find et tout le reste dans ce que tu écris.

"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

En ligne

#5 03-12-2015 16:07:37

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Salut Smolski,

Oui, j'avais bien fait ceci:

cd [dossier de musique]
[dossier de musique]$ for f in $(find . -type f -iname *.flac) ; do metaflac --export-tag-to=$f_tag.txt $f ; done



avec ce résultat:

metaflac: unrecognized option `--export-tag-to=*.flac.txt'
ERROR: you must specify at least one FLAC file;
metaflac cannot be used as a pipe

(message répété autant de fois qu'il y a de fichiers flac dans le dossier.

Je pensais avoir été claire, pardon si ce n'est pas le cas.

Hors ligne

#6 03-12-2015 16:12:11

smolski
administrateur quasi...modo
Lieu : AIN
Distrib. : 8 (jessie) 64 bits + backports
Noyau : 4.6.0-0.bpo.1-amd64
(G)UI : gnome 3.14.1
Inscription : 21-10-2008

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Désolé, ça me dépasse, j'arrive à  lire la commande mais je ne vois pas le hic. smile

"Définition d'eric besson : S'il fallait en chier des tonnes pour devenir ministre, il aurait 2 trous du cul." - JP Douillon
"L'utopie ne signifie pas l'irréalisable, mais l'irréalisée." - T Monod (source :  La zone de Siné)
"Je peux rire de tout mais pas avec n'importe qui." - P Desproges
"saque eud dun" (patois chtimi : fonce dedans)

En ligne

#7 03-12-2015 16:44:46

sogal
Black Metal Modo
Distrib. : Debian Testing
Noyau : 4.7
(G)UI : Gnome
Inscription : 09-05-2013
Site Web

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Philippine a écrit :

pour trouver que la commande est du type
metaflac [fichier FLAC] --option.


Ah ok, une commande qui positionne l'argument avant les options, j'ai rarement vu ça, d'autant que n'ayant pas metaflac installé chez moi j'avais trouvé ça :
http://linux.die.net/man/1/metaflac

Bref, dans ce cas tu as juste à inverser dans la ligne de commande :

for f in $(find . -type f -iname *.flac) ; do metaflac $f --export-tag-to=$f_tag.txt ; done


Ça utilisera le retour de find qui va trouver tous les fichier .flac, pour chacun d'eux ça va extraire les tags et les inscrire dans un fichier à son nom.
Ainsi Highway_To_Hell.flac aura ses tags dans Highway_To_Hell_tag.txt.

Dans ton cas, il vaudrait peut-être mieux utiliser une redirection directe et se passer de l'option --export-tag-to= :

for f in $(find . -type f -iname *.flac) ; do metaflac $f >> mes_tag_flac.txt ; done



Philippine a écrit :

Petit test pour voir comment ça fonctionne:

cd /home/philippine/musique/undossierauchoix


/home/philippine/musique/undossierauchoix$
metaflac *.flac --export-tags-to=tags.txt

Là ça marche, j'ai bien un fichier tags.txt, mais uniquement pour le dernier fichier flac du répertoire (on avance...).



C'est normal que tu n'aies qu'un seul fichier flac car la commande aura enregistré sucessivement les tags dans le même fichier mais en écrasant.


Machine perso : Thinkpad x230 Debian Stretch | Machine pro : Thinpad T450 openSUSE Leap 42.2

Hors ligne

#8 03-12-2015 17:21:23

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

sogal a écrit :


Ah ok, une commande qui positionne l'argument avant les options, j'ai rarement vu ça, d'autant que n'ayant pas metaflac installé chez moi j'avais trouvé ça :
http://linux.die.net/man/1/metaflac



Oui, je l'avais trouvé celui-là; mais la doc' n'est pas très explicite sur les fichiers multiples...

sogal a écrit :

Bref, dans ce cas tu as juste à inverser dans la ligne de commande :

for f in $(find . -type f -iname *.flac) ; do metaflac $f --export-tag-to=$f_tag.txt ; done


Ça utilisera le retour de find qui va trouver tous les fichier .flac, pour chacun d'eux ça va extraire les tags et les inscrire dans un fichier à son nom.
Ainsi Highway_To_Hell.flac aura ses tags dans Highway_To_Hell_tag.txt.

Dans ton cas, il vaudrait peut-être mieux utiliser une redirection directe et se passer de l'option --export-tag-to= :

for f in $(find . -type f -iname *.flac) ; do metaflac $f >> mes_tag_flac.txt ; done




C'est normal que tu n'aies qu'un seul fichier flac car la commande aura enregistré sucessivement les tags dans le même fichier mais en écrasant.



Hum, merci, mais les deux commandes que tu me donnes donnent le même résultat:

find: les chemins doivent précéder l'expression : 02 - Mendelssohn- Overture Meeresstille und glückliche Fahrt, Op.27.flac
Utilisation : find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [chemin...] [expression]



Je veux bien utiliser mon sens de la logique, mais encore faut-il s'entendre sur les termes employés. Qu'est-ce qu'il entend par "expression"???

Dernière modification par Philippine (03-12-2015 17:23:48)

Hors ligne

#9 03-12-2015 17:33:47

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

...bon petite recherche google sur le message en question. Verdict, il manque un antislash avant *.flac. Cela donne:

for f in $(find . -type f -iname \*.flac) ; do metaflac $f >> mes_tag_flac.txt ; done



Avec cette commande, plus de message d'erreur, mais le fichier mes_tag_flac.txt est vide. sad

Hors ligne

#10 03-12-2015 20:37:37

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

salut,

Tu devrais essayer avec :


for f in $(find . -type f -iname *.flac) ; do metaflac "$f" --export-tag-to="${f}_tag.txt" ; done
 


Note bien les {} autour du f qui permet de dire à bash que la
variable à substituer est f et non f_tag qui n'existe pas,
et qui donne donc pour nom de fichier « .txt ». J'ai aussi rajouté des
autour des chaines à substituer comme les noms de fichiers avec espaces
ne poseront pas de problèmes.


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#11 03-12-2015 20:46:21

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

En fait, il faut même rajouter encore des " :


for f in "$(find . -type f -iname *.flac)" ; do metaflac "$f" --export-tag-to="${f}_tag.txt" ; done
 


Sinon les noms sont « splités » aux espaces qui servent de délimiteur pour les noms
de fichiers.

Dernière modification par enicar (03-12-2015 20:47:21)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#12 03-12-2015 21:00:29

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Merci Enicar! Hélas, cela ne marche pas non plus, j'ai exactement le même message d'erreur qu'avec la commande de Sogal:

find: les chemins doivent précéder l'expression : 02 - Mendelssohn- Overture Meeresstille und glückliche Fahrt, Op.27.flac
Utilisation : find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [chemin...] [expression]



Juste une petite question: est-ce que vous avez testé ces commandes avant de me les proposer? Parce que si c'est le cas et si ça marche sur vos bécanes, il faut que je cherche ce qui ne va pas sur ma config'...

Au fait, merci beaucoup pour ta pédagogie, et pour les explications en petits caractères. Hélas, je ne maîtrise pas les bases de cette syntaxe, et suis incapable de localiser l'erreur...

Hors ligne

#13 03-12-2015 21:06:53

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Ah ! J'ai été optimiste, il faut encore protéger le motif de recherche dans le find :


for f in "$(find . -type f -iname '*.flac')" ; do metaflac "$f" --export-tag-to="${f}_tag.txt" ; done
 



Voilà en rajoutant des ' autour de *.flac, tu ne devrais plus avoir ce messages d'erreur.
Enfin, il serait bon aussi de chercher à comprendre comment ça marche et pourquoi
ça ne marche pas quand c'est le cas…

Dernière modification par enicar (03-12-2015 21:48:51)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#14 03-12-2015 21:12:29

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Je te propose une explication rapide du pourquoi ça ne marche quand on
ne protège pas avec des ' le motif de recherche de find. Si on ne
protège pas le motif c'est bash qui va l'interpréter et donc find va
se retrouver avec une liste de fichier (éventuellement vide). Ce que
l'on veut c'est que find interprète le mofif *.flac,
d'où la nécessité de le protoger smile

La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#15 03-12-2015 21:20:29

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

enicar a écrit :


Enfin, il serait bon aussi de chercher à comprendre comment ça marche et pourquoi
ça ne marche pas quand c'est le cas…



Je suis bien d'accord avec toi, mais tout le monde n'a pas la possibilité d'apprendre le langage php (même si ce n'est pas la mer à boire au bout du compte).

Voilà le retour de ta commande, je sens que je vais m'immerger dans les tutos du Site du Zéro yikes

mondossierdemusique$ for f in "$(find . -type f -iname '*.flac')" ; do metaflac "$f" --export-tag-to="${f}_tag.txt" ; done
metaflac: unrecognized option `--export-tag-to=./07 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - Allegro di molto.flac
./06 - Mendelssohn- Concert Overture Die Hebriden, Op.26.flac
./04 - Schumann- Overture Scherzo and Finale, Op.52 - Scherzo. Vivo.flac
./09 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.1 Scherzo .flac
./02 - Mendelssohn- Overture Meeresstille und glückliche Fahrt, Op.27.flac
./05 - Schumann- Overture Scherzo and Finale, Op.52 - Finale. Allegro molto vivace.flac
./03 - Schumann- Overture Scherzo and Finale, Op.52 - Overture. Andante con moto - A....flac
./01 - Schumann- Manfred Overture.flac
./08 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.7 Noturno .flac_tag.txt'

Hors ligne

#16 03-12-2015 21:54:08

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Un petit coup de :


man metaflac
 


m'a appris que ce n'est pas --export-tag-to mais
--export-tags-to
Donc la commande devient :


for f in "$(find . -type f -iname '*.flac')" ; do metaflac "$f" --export-tags-to="${f}_tag.txt" ; done
 



Philippine a écrit :

Je suis bien d'accord avec toi, mais tout le monde n'a pas la possibilité d'apprendre le langage php (même si ce n'est pas la mer à boire au bout du compte).


En l'occurence ce n'est pas du php mais du bash wink


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#17 03-12-2015 22:42:35

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Ah oui, c'est ballot ça, j'avais remarqué cette erreur de syntaxe en lisant la doc', mais de toute façon cela ne marchait pas même en corrigeant l'erreur neutral

Bon, là maintenant voilà ce que j'obtiens:

for f in "$(find . -type f -iname '*.flac')" ; do metaflac "$f" --export-tags-to="${f}_tag.txt" ; done
./07 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - Allegro di molto.flac
./06 - Mendelssohn- Concert Overture Die Hebriden, Op.26.flac
./04 - Schumann- Overture Scherzo and Finale, Op.52 - Scherzo. Vivo.flac
./09 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.1 Scherzo .flac
./02 - Mendelssohn- Overture Meeresstille und glückliche Fahrt, Op.27.flac
./05 - Schumann- Overture Scherzo and Finale, Op.52 - Finale. Allegro molto vivace.flac
./03 - Schumann- Overture Scherzo and Finale, Op.52 - Overture. Andante con moto - A....flac
./01 - Schumann- Manfred Overture.flac
./08 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.7 Noturno .flac: ERROR: reading metadata, status = "FLAC__METADATA_CHAIN_STATUS_ERROR_OPENING_FILE"

The FLAC file could not be opened.  Most likely the file does not exist
or is not readable.
 

Hors ligne

#18 03-12-2015 22:50:45

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Il y a un fichier flac que metaflac n'arrive pas à lire. Est-ce que ce serait :


./08 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.7 Noturno .flac
 


Tu peux vérifier si le fichier est lisible :


ls -l './08 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.7 Noturno .flac'
 


et vérifier si c'est un fichier flac (l'extension ne veut pas dire grand chose) :


file './08 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.7 Noturno .flac'
 

Dernière modification par enicar (04-12-2015 12:41:05)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#19 04-12-2015 00:21:06

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

En fait metaflac n'arrive à lire aucun fichier *.flac, et pour cause:

Il rajoute un point et un slash devant les noms de fichiers. Ainsi,

08 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.7 Noturno .flac

devient

./08 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.7 Noturno .flac

Sinon, pas de pb pour les flac en question, de plus j'ai le même message d'erreur en ouvrant d'autres dossiers.

Hors ligne

#20 04-12-2015 12:44:14

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Ce n'est pas metaflac qui rajoute un point slash au début des noms de
fichiers, c'est find.  De plus j'ai vérifié que ça ne posait pas de
problèmes à metaflac chez moi. Tu peux le vérifier toi même en faisant
dans le répertoire adéquat :


metaflac --list './08 - Mendelssohn- Concert Overture Ein Sommernachtstraum, Op.21 - No.7 Noturno .flac'
 


Ou avec d'autres fichiers. Remarque bien les ' autour du nom de
fichier pour protéger les espaces dans le nom de fichier. Sinon
metaflac va recevoir plusieurs noms de fichiers qui n'existent
probablement pas !

Soit dit en passant, je trouve très moche quand les noms de fichiers
comportent une espace avant le point avant l'extension ( « …Noturno .flac)
Mais bon ce n'est pas ça qui doit poser un problème.


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#21 04-12-2015 12:49:44

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

L'autre problème qui peut arriver, c'est que la commande find n'est
pas exécuter dans le bon répertoire. Mais là aussi, ça ne devrait pas
arriver. Tu peux observer le résultat de la commande find sur
arborescence de fichier flac pas trop profonde et pas trop grande
(sinon ça va te flooder ton terminal ce qui est désagréable).


find . -type f -iname '*.flac'
 


find va rajouter un ./ au début de chaque nom de fichier et en plus
il va rajouter le chemin complet des fichiers qui correspondent à la
recherche relativement au répertoire courant. C'est ce nom avec chemin
que vaudra la variable f dans la boucle for.

Dernière modification par enicar (04-12-2015 13:46:23)


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#22 04-12-2015 19:01:05

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

De plus, on peut voir ce qui se passe dans la boucle for :


for x in "$(find . -type f -iname '*.flac')"; do echo "$x"; done
 


qui devrait le même résultat que la commande du post précédent (#21).


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#23 05-12-2015 15:34:50

Philippine
Membre
Distrib. : Debian Jessie
Noyau : Linux 3.16.0-4-686-pae
(G)UI : Xfce
Inscription : 03-12-2015

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Oui, tout cela fonctionne, mais la commande entière ne fonctionne pas (voir mon post #17 pour le message d'erreur). Et j'ai bien vérifié que les fichiers flac eux-mêmes ne sont pas en cause. Donc là je sèche complètement.

Dernière modification par Philippine (05-12-2015 15:38:34)

Hors ligne

#24 05-12-2015 17:51:05

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

Je ne sais pas ce qui se passe avec la boucle for, mais la commande
suivante devrait fonctionner (elle fonctionne chez moi) :


find . -type f -iname '*.flac' -exec metaflac --export-tags-to={}_tags.txt {} \;
 



En effet, il y a quelque chose qui se passe avec la boucle for qui
fait que ça ne fonctionne pas. D'ailleurs on ne devrait pas utiliser
find de cette manière, à mon humble avis.


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

#25 05-12-2015 20:06:16

enicar
Membre
Lieu : Grenoble
Distrib. : debian/sid
Noyau : Linux 4.8.10
(G)UI : openbox
Inscription : 26-08-2010

Re : [Résolu] Sauvegarder tags des fichiers flac avec une ligne de commande

J'ai compris le problème. Lorsqu'on fait :


"$(find . type f -iname '*.flac')"
 


Bash met toutes les noms de fichiers trouvés par find séparés par des retour
à la ligne dans une seule chaine. Et effectivement ce fichier n'existe pas !

Seulement si on ne met pas ces " la liste des fichiers est « splitée »  au
niveau des espaces, et comme tes noms de fichiers comportent des espaces,
ça ne fonctionne pas.

Ce qui prouve bien qu'il ne faut pas utiliser find de cette façon wink


La machine, c'est dépassé ! On va tout remplacer par des humains big_smile

Hors ligne

Pied de page des forums