Ich habe versucht, einige .ape-Dateien mithilfe der avconv
Befehlszeile in .flac-Dateien zu konvertieren . offensichtlich avconv
ist hier nicht der Hauptpunkt; Die Syntax ist ziemlich einfach avconv -i inputApeFile.ape outputFlacFile.flac
.
Der Punkt ist, dass die Dateien in mehr Unterordnern verschachtelt sind; Das heißt, ich habe den Artist-Ordner und dann verschiedene CD-Unterordner, von denen jeder unterschiedliche .ape-Dateien enthält. Wie kann ich alle Dateien konvertieren und sie dann im selben Ordner wie die Originaldatei speichern, jedoch mit der Erweiterung .flac?
Wenn es möglich ist, möchte ich nur den Shell-Befehl in einer einzelnen Zeile ohne Verwendung von Skripten verwenden. Ich denke, es sollte so etwas sein
avconv -i 'ls -R | grep ape' '???'
aber ich bleibe beim zweiten Teil (vielleicht mit sed
??!?)
quelle
Jetzt, da ffmpeg wieder gegenüber avconv bevorzugt wird und es viele billige Kerncomputer gibt (60 US-Dollar für eine 8-Kern-XU4), schätze ich Folgendes ein, um am effektivsten zu sein.
quelle
Der Befehl für eine Zeile, nach dem Sie gesucht haben: Der
find -type f -name "*.ape" -print0 | xargs -0 avconv -i
find
Befehl stellt nur Dateien bereit,die mit .ape enden. Der
find
Befehl gibt den relativen Pfad zumavconv
Befehl an, damit diese Dateien konvertiert und im selben Ordner wie die Eingabedatei (dh .ape) gespeichert werden können.find
Der Befehl findet alle Dateien in diesem Verzeichnis, unabhängig davon, wie tief sie im Unterverzeichnis gespeichert sindquelle
avconv
Ich kann keine Eingabedateien von STDIN so nehmen.