J'essaie de convertir automatiquement les fichiers flac déplacés vers un dossier en mp3 dans un autre dossier.
Ma ligne de code actuelle est la suivante:
inotifywait -m -r -q -e moved_to --format "'%w%f'" ~/test | xargs -I x flac -cd x - | lame -b 320 - /media/1tb/x.mp3
Pour expliquer comment cela fonctionne jusqu'à présent, inotifywait surveille récursivement ~ / test pour les fichiers qui y sont déplacés, produisant le chemin et le nom de fichier dans un canal. xargs prend ce nom et crée la commande flac appropriée, remplaçant x par le nom de fichier et décodant le fichier vers un autre canal. Dans le nouveau tube boiteux traite la sortie de flac en mp3 sous / media. Je veux que xargs atteigne le canal d'une manière ou d'une autre, en remplaçant le x dans la commande boiteuse ou en quelque sorte l'envoie à une variable à laquelle les deux commandes peuvent accéder ou quelque chose. J'ai essayé de jouer avec les pipes nommées et ce jazz, mais le fait qu'il y ait des données réelles étant canalisées entre les deux commandes m'a sur le coup.
while read …
est une solution, mais alors, laissez tomberxargs
. Ce que vous avez écrit n'a tout simplement pas de sens: où pensez-vousxargs
obtenir son entrée? Et vous devez citer les choses correctement, il est courant que les noms de fichiers musicaux contiennent des espaces.