Hallo, ich komme bei einer Sache mit einem makefile nicht weiter:
Ich möchte aus allen .wav-Dateien im aktuellen Verzeichniss .mp3-Dateien generieren.
Das funktioniert bisher prinzipiell mit dem
Kommando
for w in *.wav;do sox "$w" -r 44100 -C 256.01 "${w%.wav}.mp3";done
ganz gut.
Jetzt möchte ich aber nicht jedesmal komplett ALLE .wav-Dateien in mp3-Dateien umwandeln, sondern nur die neu erstellten bzw. frisch geänderten .wav-Dateien.
Ich dachte, das könnte man evtl. mit nem
makefile lösen:
$(for w in *.wav;do echo "${w%.wav}.mp3";done): $(for w in *.wav;do echo "$w";done)
sox $< -r 44100 -C 256.01 $@
liefert die Fehlermeldung:
make: *** Keine Targets. Schluss.
Aber wenn ich mein Target mittels
echo in der bash anzeigen lasse, bekomme ich jedoch eine wunderschöne Liste all meiner .wav-Dateien, minus der .wav-Endung plus der intendierten .mp3-Endung.
Habt ihr vielleicht ne Idee, was ich da falsch mache?
Besten Dank schonmal fürs Lesen.