rename in a loop

Oct 20, 2023

I wanted to rename all *.pushup files in a file tree to *.up. Every time I have to do this, I figure out a loop or find/xargs invocation that works, then don't do it for long enough to forget how to do it.

Here's what I used this time (this expects globstar to be enabled):

for f in **/*.pushup; do git mv $f ${f%.pushup}.up; done

The % inside the parameter expansion tells bash to match $f up until it finds .pushup. reference here

↑ up