Migrate2linux Digest, Vol 29, Issue 20

Giorgos Keramidas keramida at ceid.upatras.gr
Thu Dec 1 18:18:52 EET 2005


On 2005-12-01 00:26, Manolis <trelakis at gmail.com> wrote:
> Aυτό που δούλεψε για μένα είναι το :
>
>     #!/bin/bash
>     
>     cd /path_to_single_mp3_folder/
>     
>     for i in *.mp3; do lame -b 160 -h -m j "$i" ;done
>     
>     rename .wav.mp3 .mp3 *.mp3

Καλή φάση, αλλά το 'rename' utility είναι non-standard, οπότε σε άλλα
συστήματα δε θα παίξει.  Θα μου πεις "σκοτίστηκα ασύστολα".  Είναι καλό
να μαθαίνει κανείς όμως να δουλεύει άνετα με standard UNIX εργαλεία,
όπως τα: find, mv, basename, dirname, κλπ.

> Tο πρόβλημά μου με το παραπάνω και το τελικό μου πρόβλημα ουσιαστικά,
> είναι ότι δεν μπορώ να κάνω μαζική επανακωδικοποίηση αφού πρέπει κάθε
> φορά να αλλάζω χειροκίνητα το φάκελο που θέλω να κωδικοποιήσω.

Δε χρειάζεται να βασανίζεσαι με καταλόγους αν χρησιμοποιήσεις κάτι σαν:

    find ~/mp3 -type f -name '*.mp3' |\
    while read fname ; do
        wavname=$(basename "${fname}" .mp3).wav
        lame -b 126 -h -m j -o "${wavname}" "${fname}" && \
        mv -f "${wavname}.mp3" "${fname}"
        if test $? -ne 0 ; then
            echo "ERROR: Conversion failed for ${fname}"
        fi
    done

Εχει κάποια σχετικά 'δύσκολα' μέρη το παραπάνω script, αλλά αν θες
βοήθεια με κάτι από αυτά που έγραψα παραπάνω, απλά πες μου.




More information about the Migrate2linux mailing list