• [^] # Re: Renommer un fichier en bash...

    Posté par . En réponse au journal Renommer un fichier en bash.... Évalué à 4.

    Rename :

    rename 'motif à remplacer' 'motif remplaçant' 'fichiers'

    exemple :

    rename png jpg *.png

    Attention à ce que le 'motif à remplacer' n'apparaisse pas dans le nom du fichier, sinon :

    rename .png .jpg *.png

    Pour ce qui est du bash :

    ${VAR%<motif à retirer>} = retirer une fois depuis la fin
    ${VAR%%<motif à retirer>} = retirer autant de fois que possible depuis la fin
    ${VAR#<motif à retirer>} = retirer une fois depuis le début
    ${VAR##<motif à retirer>} = retirer autant de fois que possible depuis le début

    C'est très utile pour retirer les chemins et les extension, retirer tous les chemins (tu peux aussi utiliser basename) :

    ${VAR##*/}

    Retirer toutes les extensions :

    ${VAR%%.*}

    Tu peux bien sûr concaténer directement comme cela à été montré par Obsidian.

    C'est valable pour zsh aussi.