W poprzednim artykule przedstawiliśmy jak zamienić pojedynczy plik mp3 w wav. Co jeśli jest ich kilkadziesiąt? Podany tam sposób będzie nieefektywny.
Najlepiej użyć programu mp3123 do napisania prostej funkcji w bash.
Na początku instalujemy nasz program:
1 |
sudo apt-get install mpg123 |
Następnie otwieramy plik gdzie zdeklarujemy funkcję:
1 |
nano ~/.bash_aliases |
Po czym na końcu pliku wklejamy kod:
1 2 3 4 5 6 7 8 9 |
function mp3towav(){ [[ $# -eq 0 ]] && { echo "mp3wav mp3file"; exit 1; } for i in "$@" do # create .wav file name local out="${i%/*}.wav" [[ -f "$i" ]] && { echo -n "Processing ${i}..."; mpg123 -w "${out}" "$i" &>/dev/null && echo "done." || echo "failed."; } done } |
Przeładowujemy bash’a:
1 |
bash |
Gotowe. W folderze, gdzie chcemy hurtowo zamienić pliki wywołujemy:
1 |
mp3towav *.mp3 |