#!/bin/bash mvcmd="mv" sedcmd="sed" while getopts irv opt;do case $opt in i) mvcmd="$mvcmd -i";; v) mvcmd="$mvcmd -v";; r) sedcmd="$sedcmd -r";; esac done shift $((OPTIND - 1)) sedprog=$1 shift for a in "$@";do $mvcmd -- "$a" "$($sedcmd "$sedprog" <<< "$a")" done