You could use the rename(1)
command:
rename 's/(.*)$/new.$1/' original.filename
Edit: If rename
isn’t available and you have to rename more than one file, shell scripting can really be short and simple for this. For example, to rename all *.jpg
to prefix_*.jpg
in the current directory:
for filename in *.jpg; do mv "$filename" "prefix_${filename}"; done;
or also, leveraging from Dave Webb’s answer and using brace expansion:
for filename in *.jpg; do mv {,prefix_}"$filename"; done;